COMMON_Proceedings_of_the_San_Fransisco_Meeting_196712 COMMON Proceedings Of The San Fransisco Meeting 196712

COMMON_Proceedings_of_the_San_Fransisco_Meeting_196712 COMMON_Proceedings_of_the_San_Fransisco_Meeting_196712

User Manual: COMMON_Proceedings_of_the_San_Fransisco_Meeting_196712

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

DownloadCOMMON_Proceedings_of_the_San_Fransisco_Meeting_196712 COMMON Proceedings Of The San Fransisco Meeting 196712
Open PDF In BrowserView PDF
COMMON
Proceedings of the San Francisco Meeting
December 11-13, 1967

C

·,:·':t

'",

o

o

d)

t·

·hH{ .... H' .. ···'j· .. ·w ..·rt5f· .. 'ihi.dwM+E"Biift"Ft8ijpifj".. w·wlHW·

r··

WFmma.

GENERAL MEETING INFORMATION

c'

Meeting'Rooms
All meeting rooms will be in the Sheraton Palace Hotel, San Francisco.
Specific room assignments are noted in the agenda.
Room Reservations
Reservations must be made by submitting the reservation card directly
to the hotel.
Registration
Registration fees for COMMON cover all publication and operating
costs and represent the only source of funds for the organization. Registration for this meeting has been set at $30 for the entire meeting) which
includes the cost of the luncheon on Tuesday. The registration desk at the
hotel will be open during the following hours:
Sunday,
Monday,
Tuesday,

December 10, 1967
December 11) 1967
December 12) 1967

5:00 p.m. - 9:30 p.m.
7:45 a.m •. - 5:00 p.m.
8:00 a.m. - 3:00 p.m.

Birds - of - a - Feather Sessions

()

Attendees may schedule additional informal sessions by posting a notice
on the bulletin board.
Systems Reference Library Publications (SRL)
A selection of 1620, 1130, 1800, and S/360 publications are on display
in the registration area. You may order an SRL publication by filling out
an order form- provided o You should expect to receive the items ordered
in about 3 weeks.
Computer Equipment Displays
Arrangements have been made for delegates to attend demonstrations
and receive time on the San Francisco IBM Data center machines including the 1130, 360/20, 360/30, and 360/40.
Meeting Headquarters
Typing and reproduction services will be available in the headquarters
room: Regency
Agenda Notes
The agenda listed herein represents the program at the time the booklet
went to press. Modifications and/or additions will be noted on the information board in the coffee area. Abstracts for the papers listed in the program
appear at the end of this bOGklet.
- 1 -

¥¥.E .i¥4;;;;S;4.# ....

444 ..... #4Z¥J4Al4¥IlWi¢&EIi\4?Z¥4&#.

iiIii,i&)l!¥iiit¥¥n ,•.f & ....u,,,

.JJ2t!!iitiiSiiih'lf.ii&lii,.•,LA" ,,:# /.

I

-

=----~--=--~------~-----=------~--==--

---'--~--"---'-'--------~--------.~---

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

.=~:..:..::.:

LETTER TO MEMBERSHIP
FROM PRESIDENT OF COMMON
Members of COMMON:
With this letter is the preliminary agenda for the December meeting
of COMMON, in San Francisco. The September meeting in Cincinnati
was a good one; we expect the San Francisco meeting to be better. With
your help and cooperation, we believe that each meeting can continue to
be better than its predecessors.
There are several ways in which COMMON can affect IBM and the world
in general; the majority of them, branch office, project liaison, etc., are
for today's problems, but two are specifically for the future. The first
is our comments and suggestions to the U.S.A. Standards Institute (USASI) ..
Lynn Yarbrough, of USASI's X3.4 Committee on Programming Languages,
wIll ha ve a session on the Standards Institute: its organization, how it
affects us, and what we can do to influence it. There will be time for
questions and comments.
We will have a brief discussion of the Systems Objectives and Requirements Committee (SORC). This is a committee of user and IBM representatives, whose purpose is to provide IBM with the benefit of informed
user opinion in determining the requirements for the next cycle. There
will not be a formal session on SORCi their purpose is to acquire information, and not to dispense it. There will be an explanation of it at the
general assembly, and there will be opportunities to discuss your ideas
with SORC representatives. There is a serious lack of representation
in SORC of the small computer user and process control installation.
Remember that SORC is concerned almost exclusively with the problems
of the future. We have vociferously exercised our right to criticize the products of
both IBM and USA!; we are morally obligated to do what we can to alleviate
the situation for the next generation. And our most important contribution
is information about our requirements.
See you in San Francisco.
James C. Stansbury

o
- 2-

ALL ABOUT COMMON

o

During the first half of the 1960's while IBM built and marketed the
"1620" Computer, COMMON was known as "The 1620 Users Group."
. It was the "SHARE" of the small scientific computer user. All "1620"
installations becarne members by applying and sending a representative
to anyone of a dozen or so regional or national meetings occurring during
any two year period.
As
that
was
was

the third generation computers began to appear and it became apparent
the days of the IBM "1620" were numbered, the name of organization
changed to "COMMON" and a myriad of regional and national meetings
reduced to three national meetings per year.

The COMMON Executive Board met in Chicago on September 15 and 16,
1966, to discuss ways of improving the effectiveness of the organization.
The board members felt that an organizational change was necessary to
cope with the imminent growth of COMMON, the integration into the organization . of multiple machine types (1130, 1800, 1620, 360/30, 360/40 and
360/44), and the development of increasing numbers of interest areas by
the members.

o

It was decided to break the organization down into four nl....!n divisions
along the lines of tre other two IBMUser Groups "SHARE" and "GUIDE".
Each division would be divided into projects and the projects would be
further subdivided into working committees as needed.

The divisions established were as follows:
1. Systems Division. This division has broad responsibility for coordination
of user activity .and opinions in the areas of software and hardware regardless of application.
2. Adm.inistrative Division. This division has responsibility for the various
activities which are necessary tooperate COM.MON as an organization, both
internally and in relation to other organizations. These include the newsletter, CAST, bylaws, membership list, program library, meeting plans, etc.
3. Installation Management Division .. This division has responsibility for
coordinating those user activities which are concerned with the management
of a computer installation. These include personnel training, standards,
computing center operation, etc.
4. Applications Division. This division has responsibility for coordinating
user activities which are application or industry orientl~d ..

c

Each division is headed by a Division Manager who supervises the operation of his division and reports the activities and requirements of his
division to the Executive Board through the Executive Vice President.
- 3-

Each division is composed of a number of projects. Each project is
headed by a Project Manager who is responsible for specific areas of
interest within the division and who reports to the Dvision Manager.
Each project is divided into committees each of which is headed by a
Committee Chairnlan. The committee chairmen have responsiblity for
seeing that their committees carry out the duties within their areas of
interest and for seeing that the consensus of opinion of the users at the
committee meetings are transmitted to the Project Managers.
Although in some areas committees may be divided into special working
subcommittees dealing with specific areas, it is intended that the participation of users in the activities of COMMON be carried out at the committee
level. I.B.M. supplies liaison people to the established committees so that
user's opinions and requests are transmitted to I.B.M.
The committees meet at every COMMON meeting and these sessions are
open to any user who has an interest in the topics covered by the committee.
Some meetings on the agenda are listed as project meetings. Most of these
are intended to be general discussions by groups of users having the same
machine types and are open to all users. These sessions replace the general
hardware meetings and problem-solving sessions that occupied much of
the 1620 Users Group meetings.
There are also opportunities at every COMMON meeting for users with
special interests for which no formal project or committee exist to get
together and discuss their problems and techniques. These are called
"birds-of-a-feather" sessions and are organized by groups of users
posting a notice on th~ bulletin board and holding a meeting. If enough
interest persists, a committee may be formally created and meetings
scheduled at future Common meetings.

o
-4-

------.....

-.--~---~.-.-

...- . - - - - -

COMMON OFFICERS

President
James Co Stansbury
Halcon International
Two Park Avenue
New York, New York 10016
Secretary - Treasurer
Charles Eo Maudlin, Jr.
Computer Center
Texas Woman's University
Denton, Texas 76204
Eastern Region President
Norman Goldman
Boston University
111 Cummington st.
Boston, Massachusetts 02215

()

European Region President
(Acting)
Dr. Hans Tompa
European Research
Associates S.A.
95 Rue Gatti de Gamond
Brussels 18, Belgium

Western Region Presiden~
William G. Lane
Director of Computer
Sciences
Chico State College
Chico, Californid. 95926
Mid-West Region President
Mrs. Laura B. Austin
General Supervisor
Computer Services
General Motors Institute
1700 W. Third A venue
Flint, Michigan 48502

Canadian Region President
stuart Do Baxter
National Research Council of Canada
Computation Centre M23A
Montreal Road
Ottawa, Ontario, Canada
Board Members at Large
Frank H. Maskiell
McGraw-Edison Power Systems
Division
Box 330
Cannonsburg, Pa. 15317

Richard L. Pratt
Data Corporation
7500 Old Xenia Pike
Dayton, Ohio 45432

Paul A. Bickford
Computer Center
DePauw University
Greencastle, Indiana

- 5-

COMMON COMMITTEE OFFICERS
ADMINISTRATIVE DIVISION
Manager - Laura B. Austin (3070)
General Motors

General

Reference Manual
Chairman - Dr. Raymond E. Roth (1715)
State University College
Contributed Program Library
Chairman - Miss B. Baber (1454)National Education Assn.
(Prep Forms)
CPL Shipment Analysis (1303)
Chairman - J. H. Keith
Miami - Dade Junior College North
Jug Inter-Library Exchange
Chairman - W. A. DeLagall (1582)
Schering Corp.
APPLICATIONS DIVISION
Manager - F. H. Maskiell (3081)
McGraw-Edison Co.
Techniques Project
. Chairman - W. Pease, Jr. (1516)
West Virginia Pulp & Paper CQ.
Utilities
Chairman - G. Haralampu (1041)
New England Electric· System
Civil Mechanical Engineering
Chairman .. L. W.. Brown (3301)
International Paper Co.
Chemical Engineering
Chairman - G. Hertel
U. S. Rubber Co •

.. 6--~

o

J'"

"ri'ri'

'.* . -.

f"5'it·· .. , .. ···tt-iF . -

t . ···tf£"·· rt'iifi'--' HT·-"w·ri'i9i8tiih"BflE iiiiiihHifbH·-S·.·t±H! hHfi&8 t&W- t ii'iBW-wu··,mij··W"[]"'·2'J[ w·w,""[rf·!iiiFi£riJFF'P
llI

yr"'irrm-g'vWO¥*'UZWf

Education
Chairman - M. Goldberg (1416)
Fordham University
INSTALLATION MANAGEMENT, DIVISION
Manager - C. Baker
Pioneer Hi-Bred Corn Company
Personnel
Chairman - Ro B. Thomas (3038)
Federal Reserve Bank
Operations
Chairman - R. J Snailer (1495)
Metropolitan Life Ins. Co.
c>

Standards

(Inactive)

SYSTEMS DIVISION

c

Manager - J. S. Taylor (3121)
Data Corporation
System/360
Project Manager - R.L. Pratt (3121)
Data Corporation
DOS
Committee Chairman - D. R. McIlvain (1100)
Catalytic Construction Co.
OS
Committee Chairman - Wade Norton
Southern Services, Inc.
S/360-44
Committee Chairman - A" G. WigdahL(3134)
Allen Brady Company
Hardware
Committee Chairman - J. L. Tunney) Jr. (3076)
James R. Ahart & Associates
- 7-

360 Commercial Users

Chairman .. Mr. F. Hatfield (3008)
Line Materials Industries

0

1800

Project Manager - C. R. Pearson (1497)
J. P. stevens & Co., Inc.
(Non-control)

Software
Chairman - R. Cox (1132)
Humble Oil Company
Applications
Chairman - J. C. Deck (3237)
Inland Steel Co.
Hardware & RPQs
Chairman - W. Barnes (531)
Pacific Gas & Electric

(Control)

Process Systems
Chairman - L. Jones (5046)
Bonneville Power Adm.
Software
Chairman - J. K. Tanatra (3462)
GMC Truck & Coach Division
Hardware

---Chairman - D. L. Kraatz (5255)
Corn Products Company
Applications
Chairman- Dr. W. Carlson (3009)
Champion Papers, Inc.
1130 Project

Chairman - D. Dunsmore (3428)
Ohio River Valley Commission
1620 Project

Chairman - Richard Ross
University of Mississippi
- 8-

-

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

0

lip w"'t"-j\,,j,

tti'·j·.·,} ·f ·k

itt&·±·¥·*%ttMiiiF,F· . Tbp . Jj····h.jiHibii!Rii#tE,jifrJIU·} ·.. ··r-.. -·WjijHiJJ"iAfIiiIi·u[·

wW-iuw

nf w

ryirnwH0D

SESSION M. O.
Monday 8:00-8:45 a.m.
M.O.l

New Members Session
Chairman: James Stansbury, President

M. o. 2

Room:

Comstock

Subject:

Topics of interest and concern for those attending
COMMON for the first time.

Session and Panel Chairmen Briefing
Chairman: Robert Forstrom
Room:

English

Subject:

General information and arrangements briefing.
for session and panel chairmeR.

c

o
- 9-

--.----.--.-- ...

---.--~~~--

SESSION M. 1

Monday 9:00-10:00 a.m.

o

M. 1. 1. General Session
Cha.irrnan: James stansbury, President
Room:

Rose

Subject,s:. a.

Introduction of COMMON Officers and IBM
Representatives.
b. Reports from Divisional Chairmen
c. Secretary-Treasurer's Report
d. Arrangements Chairman's Announcements
e. - Program Chairman's Announcements
f. Announcements by Members
g. Announcement of Chicago Meeting

COFFEE BREAK 10:00 - 10:30

o
.. 10-

SESSION I'rt2
Monday 10:30 - 12:00 Noon
M.2.1

360 Project
Chairman:

Richard Pratt

.Room:

Rose

a. COBOL to PL/l Conversion:

Subject

b.

IBM
FORTRAN to PLll Conver sian: IBM

M.2.2 ;

1130 Project

J

Chairman:

Dave Dunsmore

Room:

California

Subject:

~ a.

: b.

M.2.3

Dynamic Model Simulator for the IBIvl
1130: George Polyzoides
Three-and-Four-Bar Linkage System with
Plotted Output: Robert Cushman

1620 Project
Chairman:

Richard D. Ross

Room:

Golden Gate

Subject:

Tutorial Sessions Non-IBM Compilers
a. Data SPS: Richard Ross
b. One Dimensional Blast Wave Theory For
Explosions: J . Goresh and J. Caslin
c.

M.2.4

M.2.5

o

Discussion of Related Topics

1800 Project
Chairman:

Robert Forstrom

Roonl:

Comstock

Subject:

Multiprogramruing Executive, MPX: D. Schade (IBM)

Numerical Control Project
Chairman:

J .. Moschetti

Room:

Royal Suite (262)

Subject:

Discussion of Problems Relating to Numerical
Control.

- 11-

M.2.6

/

Installation Management and Administration
Chairman:
Room:
Subject:

o

Laurence Baker
Forty ... Niner .

,., a. Systems Reference Library SRL:

G. Goesch

(IBM)

v'b. Program Library Discussion: L. Austin
PREP forms for 1130, 1800
and 360 libraries

(;)

o

SESSION M" 3

V/

C
M.3.1

Monday 1:30 - 3:00 p.m.

360 Project
Chairman:

Richard Pratt

Room:

Rose

Subject:

a.
b.

M.3.2

J

M.3.3

C:i

as/DOS Data Management:
(IBM)
as/DOS Linkage Editor:
(IBM)

William
William

Post
Post

1130 Project
Chairman:

Dive Dunsmore

Room:

California

Subject:

Monitor Version II:

G. Lester (IBM)

1620 Project
Chairman:

Tony Ross

Room:

Golden Gate

Subject:

Tutorial Session (Continued)
a.

'/b.

Kingston and Forgo FORTRAN:
F. Windham and G. Smith

A Batch Processing FORTRAN system for a
minimal configuration 1620: Gaylord Henry
c. Discussion of Related Topics

M.3.4

1800 Project
Chairman:

Robert Forstrom

Room:

Comstock

Subject:

1800 MPX: B. Lanek (IBM)

o
-lj-

M.3.6

M.3.7

M.3.8

Numerical Control Project
Chairman:

J. Moschetti

Room:

Royal suite (262)

Subje~t:

Discussion of Problems Relating to Numerical
Control

o

Installation Management
Chairman:

Laurence Baker

Room:

Forty-Niner

Subject:

360 Operator Training: H. Cad ow (IBM)

Administration
Chairman:

L. D. Yarbrough

Room:

Bonanza

Panel Discussions:

USASI Standards

Panelists:

T. B. steel, Jr., Chairman, USASI X3.4
L. D. Yarbrough, X3.4 and COMMON
(Others to be announced)

SUbject:·

a. Introduction to USASI:
Mr. Steel
b. Current USASI Activities: Mr. Yarbrough
c. Fortran: USASI vs 1620 vs 360

o

COFFEE BREAK 3:00 - 3:30 p.m.

o
-14~-

~-~-~-~~~.~~~

- -

SESSION M.4

c'

Monday 3: 30 - 5:00 p.m.
M.4.1

360 DOS Committee
Chairman:

Don Mcllvain

Room:

Rose

Subject:

SOUND-OFF
Members sound off to IBM: regarding suggestions,
problems and needs for DOS.

M.4.2

360 OS Committee
Chairman:

o. a. ABe9F~on

Room:

Royal Suite (264)

SUbject:

SOUND-OFF
a.

C,;'

b.
M.4.3

W tltl>.

NOrzrdAl

Members sound off to IBM regarding suggestions,
problems and needs for OS.
Organization of OS Committee

360-44 Committee
Chairman:

Allen B. Wigdahl

Room:

Royal Suite (260)

Subject:

SOUND-OFF
Members sound off to IBM regarding suggestions,
problems and needs for System 360-44.

M.4.4

o

1130 Project
Chairman:

Dave Dunsmore

Room:

California

SUbject:

Continuation of monitor
Ver II: G. Lester (IBM)

SOUND - OFF For System 1130 will
be Held 7:30 to 9:00 p.m.

-15-

·MAy

1620 Project

Chairman:

Frank Windham

Room:

Golden Gate

SUbject:

Monitor I Papers

o

a. A Large 1620 DOS, Reasonably 7094
Compatible: Lanny Hoffman
b. Basic Problems of Information Retrieval
and a Solution on the 1620: Lanny Hoffrnan
c. Discussion of Monitor I
M.~ 1800 Project

M.4.

J

Chairman:

Robert Eorstrom

Room:

Comstock

Subject:

Teleprocessing Support on 1800/1070/1050/2740/
1030: R" Smith (IBM)

Techniques Project

Chairman:

W. Pease

Room:

Parlor A (214)

Subject:

M.4~8V;

!,il

Fast Fourier Transforms with Applications
for the IBM 1800: Joe Howard Smith
'b. NIMS ... The Aerospace Scientific Data Reduction Monitor System: Charles R. Aumann

Installation Management
Chairman:

Laurence Baker

Room:

Forty-Niner

SUbject:

a.

standards in Operation: D. Fuiz (IBM)

be

Investigation of Abnormal Operation Conditions:
K. Anderson (IBM)

V
M.4.9

Administration
Chairman:

L. D. Yarbrough

Room:

Bonanza

: Subject:

-16-

a.

Current Research Concerned with the Standardization and Formal Definitions ofPL/l: Dr.J.A .. N.
Lee

c

SESSION T. 1
Tuesday 8: 30 - 10:00 a.m.
. T .1.1

T .1.3

o

T.1.4

T.1.5

360 Project
Chairman:

Richard Pratt

Room:

Concert

Subject:

a. A Small OS System: Wa_Norton
b. Panel Discussion:
Does OS Belong in
COMMON?

800 Project
Chairman:

Robert Forstrom

Room:

Comstock

Subject:

PL-1 Language Development COP: C. Burwick
(IBM)

Electric Utility project - 1130 Working Group
Chairman:

S. A. Clark

Room:

Golden Gate

Subject:

a.
b.

1130 Load Flow
1130 Short Circuit Calculations

Electric Utility Project - 360 Working Group
Chairman:

O. B. Anderson, Jr.

Room:

Royal Suite (260)

Subject:

a.
b.

360 Load Flow
360 Short Circuit Calculations

·0.
-17-

T .1.6

Electric Utility Project . . 1800 Wor.king Group
Chairman:

R. W. Page

Room:

English

Subject:

a.
b.

1800 Load Flow
1800 Short Circuit Calculations

T.1. 7 /Techniq~es Project
Chairman:

W. Pease

Room:

Parlor A (214)

Subject:

a.

~i b.

Data Collection: G. A. Gallaway
Large Matrix Inversion on a Small Computer
T. E. Bridge

/

T.1.8 ':;Education Project
Chairman:

Jack Underwood

Room:

Bonanza

Subject:

T .1.9

J a.

Chico state Col1~ge Registration/Scheauling
Analysis: Neil McIntyre
student Information System of Christian
Brothers College Employing the IBM 1130:
Brother Jerome We~ener

o

Installation Management
Chairman:

Laurence Baker

Room:

Forty-Niner

Subject:

~!

a. Programmer Expectation: D. Mayer (IBM)
b. Programmer Selection and Testing:
D. Mayer (IBM)
COFFEE BREAK 10:00 - 10:30

c"
-18-

SESSION T.2
Tuesday 10:30 - 12:00 Noon

c'~

T.2.1

T .2.2

T .2.3

c

360 Project
Chairman:

Richard Pratt

Room:

Concert

Subject:

44PS and its differences from OS: D. Rumney (IBM)

1130 Project
Chairman:

Da ve Dunsmore

Room:

California

Subject:

1130 as a Terminal for S/360: K. Gabbert (IBM)

1800 Project
Robert Forstrom

Room:

Comstock

Subject:

a.

~W"'7
T .2.4

T.2.5

-

Chairman:

-9

Installation Descriptions
Bonneville Power: B. Hoffman
Colorado -Public Service Corp: E. McLaughlin
b. -aa1Q 8&11. ~u "gar..

Electric Utility Project - 1130 Working Group
Chairman:

S. A. Clark

Room:

Golden Gate

Subject:

a.
b.
c.

1130 Hardware Difficulties
Sound Off
New business

Electric Utility Project - 360 Working Group
ChairIl\an:

O.Bo Anderson, Jr.

Room:

Royal Suite (260)

Subject:

a. 360 Hardware difficulties
b. Sound off
c. New business

-19-

.~~~--

...... ...
~

-.----.~

..-.....•....-- ...-...-.-

T .2.6

T

.2,j

Electric utility Project - 1800 Working Group
Chairman:

R. W. Page.

Room:

English

Subject:

a. 1800 Hardware Difficulties
b. Sound off
c. New business

Techniques Project
Chairman:
Room:
Subject:

W·. Pease
, Parlor A (214)

J
J

T

.2.J

T.2.9

o

a. Non-linear Regression Analysis with three
Independent Variables: T.E. Bridge
b.

User Experience with 1130 LP-Moss: S. A.
Lynch

Petro Chern Engineering Project
Chairman:

Gene Hertel

Room:

Forty-Niner

Subject:

Application of Simulation in Control, Design and
Optimization of Chenlical Processes: M.J. Shah
(IBM)

Education Project
Chairman:

Jack Underwood

Room:

Bonanza

Subj ect:

Panel Discussion on Software Requirements in
an Instructional Program

o
- 20._--_

.. _ - - - _ . _ ....

DELEGATES LUNCHEON
Tuesday 12:00 Noon
Rose Room

()

Speaker:

Dr. Robert E. Hill
President, Chico State College

Dr. Hill is a recognized authority in the
field of international education, finance, investment, and international economics. He
has written numerous articles, monographs
and short papers and has risen from Assistant Professor of Finance (1957) at the
University of Illinois to Professor of Business and President of Chico state College
(1966).

'0'"
,.

)/:..

.

Dr. Hill will speak on the subject: "Technology and Adrninistration; A Paradigm."

- 21-

SESSION T.3
Tuesday 1:30 - 3:00 p.m.
T.3.1

T .3.2

T.3.3

T.3.4

T.3.5

Special Session:

Time ... Share Computing

Chairman:

W. G. Lane

Room:

Concert

Subject:

a. Conversational Computing: James Babcock
b. RUSH, Conversational PL-l: Paul DesJardine
c. Computer Assisted Instruction at Stanford
University: Max Jerman

360-44 Committee
Chairman:

Allen B. Wigdahl

Room:

Royal Suite (260)

Subject:

Division of Problems related to Systern 360-44

1800 Project
Chairman:

Robert Forstronl

Room:

Comstock

Subject:

PROSPRO: O. Merklinghouse (IBM)

Electric Utilities Project
Chairman:

G. S. Haralampu

Room:

California

Subject:

a.
b.

Reports of Working Groups
Progress reports on fault calculations,
transient stability engineering operating
systems

Petro Chem Engineering Project
Chairman:

Gene Hartel

Room:

Forty-Niner

Subject:

Laboratory Automation: RQ A. Edwards (IBM)

T.3.6. 1130 Project
Chairman:
Room:

Larry Armbruster

')"'"
\

Subject:

LP-MOSS: IBM
COFFEE BREAK 3:00 - 3:30 p.m.

- 22-

o

SESSION T.4
Tuesday 3:30 - 5:00 p.m.
T.4.1

Open Board Meeting
Chairman:

James stansbury, President

Room:

Rose

Subject:

a o Members Sound Off to Board
b.. Discussion of IBM-COMMON Relations
c. COMMON Publications

T.4.2, 1800 Project
.,../

Chairman:

Robert Forstrom

Room:

Comstock

Subject:

C;!

T .4.3

a. PROSPRO (continued): O. Merklinghouse (IBM)
U/b. TSX Modification for 6 Disk Drives:
E.H. Spencer

Electric Utilities Project
Chairman:

G. S. Haralampu

Room:

California

Subject:

a.
b.
c.

Engineering Data Banks
New Business
Plans for next meeting

o
- 23-

SESSION W.1
Wednesday 8:30 - 10:00 a.m.
W.l.l

W.l.2

360-0S Committee
Chairman:

"s i. Apderiia,.#r.

Room:

Royal Suite (264)

Subject:

a.

W.l.4

,W.l.5

OS Reread in FORTRAN: WaN Norton

a60-DOS Committee
Chairman:

W.l.3

W"bf' JJol:rO'-J

Don McIlvain

Room:

Ralston

Subject:

a. Discussion of problems
under DOS

relat~d. to... FfORTR}N

360-Commercial Committee
Chairman:

To be announced

Room:

Royal Suite (262)

Subject:

a.

Discussion of problems related to
COBOL, RPG, COS

360 ...44 Committee
Chairman:

Allen B. Wigdahl

Room:

Royal Suite (260)

Subject:

Discussion of problems relating to System 360-44

1130 And Techniques Projects
Chairman:

Da ve Dunsmore

Room:

Bonanza

Subject:

a. Overlapped printing for IBM 1130 Commercial
~pplications USing FORTRAN Write Statement:
Brian Swain
b .. 1130 Commercial Subroutines

- 24·,

o

W.1.6

1620 Project
Chairman:

Richard Karpinski

Room:

Golden Gate
General information on CAl with special
"emphasis on 1620 version of COM PUT EST

SUbject:

w.~ 1800 Project
Chairman:

Robert Forstrom
,I

Roorn:

California

SUbject:S·A comparison between 2310 and 2311 Disk
storage Systems: Salomon Saroussi
'2.
Process Control in Natural Gas Transmission:
,
• ;;
A. A. Douloff

-rZ
W.l.8

Admini straHon Proj ect

Chairman:

Laura Austin

Room:

English

Subject:

a. Discussion of Reference Manual Project
h. Call for help

J1.9

Installation Management

Chairman:

Laurence Baker

Room:

Forty-niner

Subject:

Systems and Programming Project Management:
Ralph Sackman,Jr.
COFFEE BREAK 10:00 - 10:30 a.m.

- 25-

--------.....-...

-~--

SESSION W.2

o

Wednesday 10:30 .. 12:00 Noon
W.2.1

W.2.2

W.2.3

W.2.4

W.2.5

360-0S Committee

It, Anderson

Jr... W Ai>&

Chairman:

Q,

Room:

Royal Suite (264)

Subject:

RAX: D Madden aBM)

~aT4"-'

360-00S Committee
Chairman:

Don Mcnvain

Room:

Ralston

Subject:

Discussion of problems relating to PL-l

360-44 Committee
Chairman:

Allen B. Wigdahl

Room:

Royal Suite (260)

Subject:

Discussion of problems relating to System 3

r.f~

V

1130 Project
Chairman:

Da ve Dunsmore

Room:

Bonanza

Subject:

Discussion of problems relating to 1130

1620

proi~1Jo

eSM' ,d....

Chairman:

Richard Ross

Room:

Golden Gate

Subject:

a. Continuation of CAl discussion
b. Suggestions and Wind up
c. Plans for next meeting

o
.. 26 ..
- - - - --_._---

W.2.6

1800 Project

J

Chairman:

Robert Forstrom

Room:

California

Subject:

a.
b.

W:2.7

W.2.8

(

Techniques Project
Chairman:

W. Pease

Room:

English

Subject:

a.
b.

W.2.9

Summation and Review
Plans for future meetings

Petro Chern Engineering Project
Chairman:

Gene Hertel

Room:

Royal Suite (262)

Subject:

a.
b.

"'"

)

User Experience with. Teletype Terminals
on the IBM 1800: W. M. Schonlau
Plans for next meeting

Instal1at~on

Summation and Review
Plans for future meetings

Management

Chairman:

Laurence Baker

Room:

FottY-Niner

Subject:

A Review of the GUIDE Installation
Managem:ent Project: Arthur Nich()ls

.........

----.--~

.... -.-.-

~-

..

_--_.__.__.._...-

..•__._•.....

".,r-') ,

(~-J~

SPECIAL ATTRACTION
VVednesday Afternoon
IBM San Jose Plant Tour
a.
b.
c.

1500 and 1800 Production line
Direct access storage devices
Demonstration of 1800 MPX

Complementary Transportation by IBM Charter Bus
Leave
San Francisco
1:15 PM
Rtn
San Francisco Airport 4:45 PM
.Rtn
San Francisco
(Sheraton Palace Hotel) 5:30 PM
Reservations must be made at the registration desk by 12:00
Noon Tuesday.
Delegates may choose to tour the facilities
( a and b) or to attend the demonstration
(c). We regret that time does not perrnit
both.

c
- 28-

"FpprWT filt"W7Wr
W

SESSION W.3

C:

Wednesday 1:30 - 3:00 PM
W.3.1

360 Project
Chairman:

Richard Pratt

Room:

Ralston

Subject:

a.
b.
c.

~

W.3.2

Reports of 360 committees
Recommendations to IBM
Plans for future meetings

1130 Project
Chairman:

Da ve Dunsmore

Room:

Bonanza

Subject:

a.

b.

Suggestions and Improvements
Plans for future meetings

C'

C,

',c,
,

.

- 29-

."

---...

......•

~-~~-

--....... .... ..

---,---..............

,.''''

,,,.,

,-,.~-~

..

~~~---------

Abstracts of Paper s
Session M.O
M.O.1

o

New Members Session

At past meetings the orientation session for new members of COMMON
has always taken place at the end of the first day. This arrangement
has the result of permitting many new members to walk around in a
fog for one-thirq of the meeting! In an attempt to remedy this situation
we have scheduled a short session before the meeting proper begins to
familiarize new members with the workings of COMMON and to make them
feel more at ease at the sessions that follow.
Session M.l
M.l.l

General Session

This meeting will be chaired by the president of COMMON, Mr.
James stansbury and will be in the nature of a formal welcome to the
attendees from the Executive Board. There are no concurrent sessions,
so that all registrants may be present. In addition to the usual introductions of CO~1MON Officers and special guests there will be time reserved
for last minute changes to be announced by the Arrangements Chairman
and the Program Chairman. If possible, procedural questions from the
floor will be invited.

o

Session M.2
DYNAMIC MODEL SIMULATOR FOR THE IBM 1130
The Dynamic Model Simulator is a chain of FORTRAN source programs
that permits the IBM 1130 user to investigate in depth the dynamic behavior
of physical systems that can be modeled into linear or nonlinear ordinary
differential equations.

It can be used for the investigation of a wide range of engineering
and mathematical problems from reaction kinetics and reactor responses
to the design of electrical networks and structural assemblies.
The system does not :r:equire familiarity with analog computers although in a way it fo.rces the IBM 1130 hardw~re to perform the function
Of an analog computer while at the same time it offers the digital computer
advantages of random memory access and ten digit (extended) precision.
The input consists of English command words (START , WAIT, RESET,
etc.) and numeric data which are read in free format.
The system output includes tabulated values of the variables at specified
intervals, a table of the 'variables involved and detailed error and information messages. Plotting of the variables is also available as an option.

-30-

o

j"."j"'H'i" ,; "" "f

"""

"E" t1j ".

""'j""

"&¥'""Tf,( HiT"" "j&i!fditffWEtiWii£#E¥&""" 'T"" ""'"WnWYUWillTillHW'NP

System Source Language:

o

FORTRAN IV, Level E

System Hardware Requirements:

1131 CPU-SK, one 2315 dis.k cartridge
. 1442 Card Reader
1132 Printer
Benson-Lehner 305 Digital Incremental
Plotter
(optional)

PROGRAM LIBRARY
Discussion of the proposed PREP Forms for the 1130, lS00 and 360
Library. There will also be a discussion of an extension of the minimal
standards for this Library. It is requested that there be representatives
from each of the machine system projects in the Systems Division present at this meeting.

THREE-BAR AND FOUR-BAR LINKAGE SYSTEM WITH
PLOTTED OUTPUT
A mathematical model of a linkage system is controlled by an array
of inputs to plot out the path of the linkage intersection point. In addition,
the system simUlates turning the entire mechanism about a major axis.
The output of the system has yielded some very interesting designs.
In conjunction with this report, a list-oriented free field floating point
input program has been developed. This routine enables the control
program to modify only specified items of the system input. Under break
character control, an automatic interactive procedure can be set up.

Session M.4
'A LARGE 1620 DISK OPERATING SYSTEM, REASONABLY
7094 COMPATIBLE.'

o

A new monitor for a 40K or 60K 1620 has been developed at Princeton
for use as a debugging aid for the 7094 and some 360/0S programs.
FN II I/O and FN IV I/O· are included as well as private storage of programs. Many control card options exist. Speed can be 2 to 4 times faster
than MON-I (if one has hardware FLT. PT.)both in compilation and execution. A users manual does exist. Many students are presently using the
system on a completely open-shop basis.
- 31-

'BASIC PROBLEMS OF INFORMATION RETRIEVAL AND A
SOLUTION ON THE 1620.'
Some of the basic problems of information retrieval and implementation
are discussed. The techniques of fi1e-organiza~ion are discussed. These
techniques are discussed for the most common file devices (disk and tape).
A solution is shown for the 1620 with disk to demonstrate disk utility.

FAST FOURIER TRANSFORM
WITH APPLICATIONS FOR THE IBM 1800
The Fast Fourier Transform technique as developed by Cooley and
Tukey has had a widespread effect in the field of time series analysis.
However, some difficulty has been encountered. by potential users in
determining exactly how the technique works. An effort to explain the derivation in detail will be made
Also, a description will be given of an analysis package program in
which the Fast Fourier Transform technique is used to yield amplitude/
phase spectra, power spectra, cross power spectra, and auto correlations.

NIMS- THE AEROSPACE SCIENTIFIC DATA REDUCTION
MONITOR SYSTEM
The IBM-TSX System was designed for an IBM - 1800 operating
in a real time environment as a process controller. The Aerospace
IBM-1800 is used primarily as a post flight data reduction system interacting with telemetry ground station equipment. This demands the
fuIl interrupt facilities of the system but in a batch processing mode of
operation such as offered by the TASK stand alone type system. The
, resulting NIMS Monitor System combines the features of the process
and non-process modes of operation into a general mode of operation
in which the full interrupt and peripheral facilites of the machine are
available to the active' application program under execution.
The system basically is a TASK OFF -LINE system with the system
components modified to allow Process Subroutines and Interrupt Service
Subroutines to be included in the core load generation. Other features
include a one card cold' start, ability to assemble or compile from magnetic
tape input, and a magnetic tape backup system. In addition, the TRACE
and CORE DUMP routines of TASK have been modified to provide and
extended mnemonic output listing.

--32---------.-.-.~--

. . .-

---------_._----_ ........

_

.. -.

-

----

- .... - ..---------..

-.~---.-----

-_.- --------..

...

- - - - - - - -.. -

.. _ - - - - - - - - - - - _ . . -

o

;- '"1

o

.

t·l· ..

··t" ...... ··\ ...... if .... ili·

j

--s .

CURRENT RESEARCH CONCERNED WITH THE STANDARDIZATION
AND FORMAL DEFINITION OF PL/I
In April 1966, a subcommittee of USASI Task Group X3.4.2 was
. established to investigate the standardization of PL/I. Since that time,
two working committees have established with exnlicit charters:
Group I: The resolution of the language PL/I
and
Group II: Formal Definition of PL/I
This paper deals specifically with the work of the committee on Formal
Definition and its relations with the definitional task forces within IBM.
This paper will discuss the techniques of definition as proposed by the
cOlnmittee, the uses to which the definition is to be put and the implications
of the work of this committee on the standardization of other computer
languages.
A familiarity with PL/I is not presumed.
Session T. 1

c

THE 1620 AS A DATA COLLECTOR OR
SOFTWARE, THE CRUTCH HARDWARE BOYS LEAN ON
The paper will cover the date collection methods used at the Sacramento
Peak Observatory. The principle reasons for designing a computerized
data collection system were:
1) Improve existing methods which used sumrnary punches.
2) Gain experience and insight into problem~ associated with data
collection in preparation for third generation equipment.
The paper will also cover the roles played by the programming staff
in this type of operation. Namely, software as a diagnostic tool for the
hardware boys in developing data reduction/ collection instruments, and
software as a useful and flexible tool for the research scientist.
Three methods for data collection and reduction by computer have
been tried.
1) On line, one point at a time, testing each point for parity and
structural errors and storing it on the disk before the next
point is generated.
2) On line, a record at a time, locking the source device out until
the data has been tested and stored.

o

3) Off line, using 7 track incremental tape recorders, with testing
and reduction being done during slack times.

- 33-

t·b····'i'ri'FfMi*ii'j'j·-t- .. a-·· u tlF#ii±i8-%it .. ,.

CHICO STATE COLLEGE REGISTRATION AND
. SCHEDULING ANALYSIS

"Salient features of Chico .state College's computer approach to
student scheduling and registration are discussed; applicability to other
colleges and other computer configurations is emphasized."

o

STUDENT INFORMATION SYSTEM OF CHRISTIAN BROTHERS
COLLEGE EMPLOYING THE IBM 1130

We received our 1130 around July 4 and immediately began programming
it for our Student Information Svstem. This is a great improvement over
the 1620 system since that was chiefly card oriented and we can now keep
all the information on the disk. All of the programs are written in FORTRAN
with the exception of two or three adapted with the Commercial Subroutine
Package. After the students are registered, we are able to produce class
lists, student schedules. mailing labels, all types of statistics, statements,
report cards, and permanent record labels. The system works very well
and will become more efficient when we add an additional two disks and
receive our 1403 printer.

o

G
- 34-

Session T. 2

o

USER EXPERIENCE WITH 1130 LP-MOSS
U. S. Reduction Co. has used the 1130 LP-MOSS application package
since its first release. Various problems have been encountered during
its, use; however, useful answers have been obtained. Due to the size of
the aluminuln alloy blending problem being studied, a second 1130 had to
be leased for full dedication to this problem. Early results indicate a
reasonable payback may be obtained from this hardware and software
combination.
An Outline
1.
2.
3.
4.
5.

Company background
Early uses of linear programming
Problems encountered in implementing 1130 LP-MOSS
Results to date and future planning
Specific application modifications desired

APPLICA TION OF SIMULATION IN CONTROL, DESIGN AND
OPTIMIZATION OF CHEMICAL PROCESSES
The problem of supervisory control and optimization of a chemical
process requires that the control as well as the optimization programs
be provided with a mathematical relationship between the dependent and
independent variables in the process.
In this presentation we will discuss methods of arriving at this relationship based on the fundamental laws of physics and chemistry. We will
make the proper approximations valid for control purposes to obtain
the solution of the differential equations, describing this relationship.
Use of simulation languages helps in reducing the programming time as
well as the number of trials required to attairl successful solutions.
An example of methanol plant will be discussed in some detail to illustrate the mathematical and programming technique's to achieve the desired
relationships for control and optimization. It will be shown how these
differential equations with modification of the objective function when
used in the optimization program can lead to optimum design of the plant.

o
- 35-

~1i!iiiiiiiiiIBi;:;;;:;'HI1I1M31",;;;,r\l...,"a;K,6;;:'=P"d;::;b,,,IA!;1J[

·A" .. rutL''''·'',·j@.'''JO·'i.·f!#I''f..liF·'':;'''·'\'I··' II····· "" .. ".;.. """.(;Z;"""""""I'! ... ~ '~"""" ,.

44..1.,';'.:

......- .... __ ._ ..................

~~---

_-------------_.__..........

..

"".•...•-"~

....

,~~~"'-"""

Session T.3
LA BORA TORY AUTOMATION
The session on Laboratory Automation will include a general description
of program'ming and equipment aspects of the application of the 1800 and
1130 to this newly emerging and fast growing field. Following this
discussion, an application will be discussed in detail. This will include
a description of the type of research to be accomplished, the incentives
of the on-line computer, the programming system to run the instrument
in a closed loop fashion, and other experiences to date with the system.

o

o
-36-

--"

......

-~

..

~-~-

..-

- - -....

--rrK-W"T "Wl?Tvr---zgprwn

Session W.1

o

OVERLAPPED PRINTING FOR IBM 1130 COMMERCIAL
APPLICATIONS USING FORTRAN WRITE STATEMENT.
A method is described for incorporating overlapped printing into
IBM 1130 Commercial FORTRAN programs. Communication to the suosubprograrn which performs a printing operatIon IS acnlevea tnrough
the FORTRAN WRITE statement rather than through the CALL statement.
The advantage of this method is that limited use can be made of the
formatting ability of the FORTRAN language. Headings can readily be
incorporated, and the layout of the printed page specified by use of FORMAT
statempnts"
A BA TCH PROCESSING FORTRAN SYSTEM
FOR A MINIMAL CONFIGURATION IBM 1620

o

This paper describes a software package designed to increase throughput on a 20K card system IBM 1620 computer in an environment where
a large number of fairly simple FORTRAN programs must be processed.
The increase in throughput is accomplished in two ways; (1) programs
are batch executed under control of a loader-monitor routine, and (2)
a powerful precompiler reduces the number of execution errors and de':
creases the requirement for on-line debuggingo
The cOlnpiler is a version of the PDQ FORTRAN compiler which
has been modified to handle the batch processing features of the system.
Batch execution is made possible by keeping the entire subroutine library
resident in core rather than reloading it with each object deck. Object
programs, separated by control cards, are stacked for input. The reading
of a control card by the FORTRAN card read subroutine or the execution
of a CALL EXIT statement will cause the next object deck to be automatically loaded and executed. The monitor will also ternlinate a job if the
output line count exceeds a control card specification.
The precompiler detects more than seventy distinct errors based on
PDQ FORTRAN specifications. Many of these errors, such as undefined
synlbols, are undetected by the compiler and cause execution checkstops. Recognition of multiple errors in a single statement is possible,
thus eliminating multiple debugging passes.

o
- 37-

-----..---------.---.-"..-...... ......-"""'-..
"

-.-.~~~---------------------------.

A COMPARISON BETWEEN 2310 AND 2311 DISK STORAGE SYSTEMS
A series of programs has been written to allow 1800 users to fully
utilize the capabilities of the IBM' 2841-2311 disk storage system within
the frame work of the Time-Sharing Executive -- TSX, Version 3, Mod L

o

A comparison is made between the 2311 and the 2310 disks in programming techniques, timing and cost effectiveness.
PROCESS CONTROL IN NATURAL GAS TRANSMISSION
WITH AN IBM. 1800
This paper will present the progress made by Trans-Canada Pipe
Lines Limited, Toronto in the field of process control computers. A
brief description is given of the feasibility study prior to ordering the
computer, the organization of the implementation team and the methods
of implementation.
The purpose of installing the process control computer at TransCanada is to save fuel by more efficient operation of compressor stations,
and to guide the dispatcher into better control of the line, thus allowing
more throughput at the same or better operating cost. The computer is
not closed loop, but accepts telemetered data from all compressor
stations on a priority interrupt basis, optimizes the line by means of an
on-line simulation program and then informs the dispatcher by typewriter output what change, if any, to make to achieve optimal operation.

o

A description is given of the telemetering system that feeds the
computer and of the Simulation/optimization program that is used to
control the line. The computer, the tB"M. 1800, was installed in June
1967.

SYSTEMS AND PROGRAMMING PROJECT MANAGEMENT
The allocation of limited systems and programrning resources to the
highest payoff areas is becoming more· important as data processing installation costs continue to rise. Long and short-range plans properly
approved by top management and formalized systems project managell1ent
are vital tools to assure that systems capability is focused on the major
areas of the enterprise and adequately controlled to attain the stated objectives. To work effectively in this environment, additional demands
are placed onto the systems group to develop systems plans in terms
easily understood by top management and onto data processing man . .
agement to bring about fulfillment of the approved plans on time and as
economically as possible.
- 38- .

-..

---.----~-.--

..-.-

--~

o

Session W.2

0.:\

USER EXPERIENCE WITH TELETYPE
TERMINALS ON THE IBM 1800

'.)

The
the IBM
teletype
to solve

following describes and addition to the programming system for
1800 computer. The expanded system will support up to 16 remote
terminals being used in a time-sharing environment primarily
realtime inforrnation processing problems.
1800 Hardware

The 1800 CPU Inakes extensive use of hardware interrupt levels and
data channels to operate its standard data processing I/O equipment. In
addition the 1800 can have analog and digital I/O capable of communicating
directly with almost any kind of equipment. The terminai system uses
2 words of digital input and 1- word of digital output (16 bits/word) to
control all 16 terminals simultaneously. No data channels or additional
hardware are employed.
TSX Programming System

o

The 1800 program.ming system provides many conveniences. Programs
are of two types, process and non-process.
Process programs can be initiated by externally generated interrupts
or can be queued by any program for execution. They can be a part of the
system skeleton which is in core at all times or they can be kept on disk
in core-image form. Process programs have highest priority and generally
use SaIne analog or digital 1/00
Non-process programs ordinarily do not use the process (analog and
digital) I/O. They are usually stacked jobs of a conventional type to be
run under the non-process monitor.
When time-sharing, the systenl does the following:
(1).
(2)..
(3)..

Runs non-procE::ss programs for background (job shop).
Periodically checks the queue for process programs.
Permits externally or internally generated interrupts to
load and execute process programs at any time.

Both (2) and (3) require that the non-process job be saved and restored
when the process work is finished ..

o

The Terminal System
The ternlinals extend the tiIne-sharing capabilities of the system by
allowing up to 16 users to communicate with the system simultaneously.
- 39·'·J",-" .••. ,4,

,.,·."·,;,44;.·,·",··,,

".,,,:+.8f'iiifiT\'I$fff,

'"#'''''

,.. "4,...., ..'.I>'.. r'.'.Q..'li£#%2W,,.,.:

....

_-_...._........_...__.._----_._._.._...__..... ................... ....."

,

..

~.-~--~~--.~~~~~~~~~--~~-~------------

Terminal activities include:
(1).
(2).
(3).

Queing process programs for execution.
Communicating with programs during execution.
Programming in NUtran (conversational fortran).

o

Many other activities are planned.
Most of the terminal system capabilities are achieved by simply
making the standard TSX functions more accessible. The only programming
efforts unique to' the terminal system are the communications controller
(simulated by an in-skeleton program), and the time-slicing of terminal
service programs.

o

o
-40I

I.
I

__

~S

D

ALE X AND E f<

.

C

'Of:. 1"1 f-

~j~.t~. t= I':,l.< C_tL s.JJ.~!l[;j:L__.__ ..__.--1i.()F E.LI 1._ F JtJ.".JJ_.~.1:\.b_Lf_. ___..J,.J:Ll~.o.. _.

C I 0 L~f\ LTC; Y

C Ci'.~ P

H () L L J S

hi

Y

0

3 60

0

__ ~.h L_H_R_'!.I.I_SJ_i,,____ . ___ E .. _..~Q_l1J'J DJJ:

_f_t:;.!::.~ i~~Q_. __ .___1 b 0 ~_~.b {\J.i..~~:~yJJ.:c'= .L.H!L_______1 H D.S!
ALLEN
R F IF~t,·;
Ct: I Cl'-,(~U ILL
360
_.~b.y.,t~:,. __.__.__ .__ .__._. ____ F_r~!1J~~..:.... ___ ._._. ___
...:,_:~
_.:'?o!~,.I'·1 __ .JJl~if_5:;.(L~. JE __._____ .._______ .__ ._
I __

I

ANDERSOI\!
.... __1\ ~.!<

_ _ •• _ , . _ _ _ _ ....__...

SJH! Fr·__ f.h.!.!~.·F_i~l I C t·l ___. ____.___ .____.____1.:9.2 0 .
AYE R S
f~ [) HO \,-':i·: c: T C UI": I~
CHI C 1\ (;U I L 1_
.... ,,3'.6 (}
I NS

HADFN
-,---.. _- ..

:~---

8ft,.QEN

___ t_6J..b E Y

S

F ~;: A ~~~ S 1-1 /\ L L

._______ .J:.~_.C.!Jj_L~__ .__ .. ___ .____________._____._ ___~~P/\ T CJ G !\_~J~LJ£_

1l-:; (;
360 ..
__. ______ ~_1:JiJj)J:Lt~5.T._JLU= __(JJ£~ ________ Dr:: i',~\Lc;.,~L~J.!...l:_.!L. _____ ._________.__ 36 Ci ._
t\1
JUr'~IV
OF ~~EhJTUCIJD :'~lCh
IBOO
2 l;. 00 COL U;.: [:3 US If'! D I A f·.! A
-1 1 30
B CHi/~ Y ,_ _ _ _ _ _ _ _ _ _ J PC U j\'1 i't! i'l SoC I\! G If',1 E en
V.J
ST
S -PI;~~~ t:: ~~-------'-BR-O
HAvE·~J'~,:l:i-s-s----- ··~-~·-1·80(-;::BOl'JD
V L I l-~.~:: ____._.
. ._______.__<; /~~1?b E L L C 1\ L I F
___ ~ 6 D__
_ ~f:3 q~? a N.:......._ _
I iv'iA

-F -RE'"GI

BOUC

HEF~

H

f3 0 Vj E "._f_-________

.J::{f..~J

-.---"': ----.

ILLli. ~

CD

NE:\'!

HAVEN

1130
3:6'0

COf\IN

_._~

---.-----..----- ,-

DGE/vi AI',)

K

-~

.HR

UNITF'::D

I

R VJUS
Gt::CJL
.. CJGI
~U!~VEY
CAL IF
__M ...
_____
_ _ _ _C/\L
_ _ .. _ _ _
.. _ _ _ _ _ _ _ _ _jviENLO
_ _ _ _ _PAf-~K
.. _._. ___ _
V T I b r,,'j \'! T C
SAt·..) J 0 S l-:: C ;.\ L 1 F
t,j XCENTF~!\L LI-\ ~::LECT~ -1 _

J

OE~!ISON

PA

YO~~I(TU1:i~,1

1620
360
1130

f'j Y

:16 0

F O:·0
F R I r=: [) t J-\ N D
1\1 J U ~_LU~}1__L(__.t1.~;:~~=.I..rJ.__;;., L:".UV ____ L 1\ ~ V ~~i£\..~ f~lE V /\[! p'-_ _ _ _ _ .-lL~CL-_
FULLAN
0 JI8M CORP
WHITE PLAINS NoYo
360

.___ 0~-,'l6.JRA

H
.J

G A NAT R A

GARD

D

GAR [) 1\1 E R

_

.D

_____.___ DE_T:~. L L J\ i·,;
A F F Hd:: STU i',j f-:: T I ion:
J-\ K R (l!' I C1 H I G
3 60
H/\ LL 11'1 G
[-3
I-~ OLL s-~ Cl YC E LTD
DE U<3 Y Et,1 GL !\f\D
__ 1800__ _
HJ-\ f-i I L
Vi Rlbf·i-5DD
1 1 30
H A ~~ A L J\fvl P U G S I'~ E ~',; E: r\1 GL II. f\j D l:: LEe S Y S 1 () 11 1 b D S T (I i·) r~': t\ s s
1130
- - - - - - - - - _ . ._-_ ._---_._-------_..
.---------.--HATFIELD
F Id,iCGf~A\".! EDISl)l,1 CC!
::;Otk;) ZI-\r'Il:.<'VILLf OHIO
360
HA YE S
~'1 E I E::j'v! DE PT
?06
S/\ r'! J os r: C,I\L 1 F
360
-H-t-\-Y·,.~-/\--'~-D
- - - - - . A P"[)'UOUEs-r:~[,~ ___._ _ _ _ _ _ _3 6

D_.I_V_I_S l_l_-.ii'_'J_________. __

-.---.---------------~----~.-----.--.-.----

.

.3 (:) 0.__ _
(~_._

vn~~_ ~_f.~_~~_J\_I_i·_,1~:_ .• ~_~ _______. __1_1_3_(~___

---------_..._._._---------"-_._------ _-------

-------.._._-------------_ .. ._-_._-------_._-_._-_..

..

--~-------------.----.-.--.-.-.-------

___.___--.------.--._.________. . __________.__.______________#:B.L______.
llSLEZLWLW CWJ';:G£J;g;b;;;:;.g,;;:;b"'k.;:;;:;;;;;;;:t"JI".~R..".,'" .

..~ .. , ., .... ,.

-_ _--

~.

•.

I

..
1

•

~

~

PAGE

HILL
HI-P-S-'K-r-N--O------H0
H 0 F F f"j AN

\fJ

J
1tJ

_t!. C1 VJ E~.hL_
HUGHES

Hl3ENDIX cor~r:~
G C BESTOf< "j'

161';:' TETI'R"OPO tjJ
~
. ':~-CARr~,~~: C'-AL~;F-'--"----'-.-..---~ 1 ~VJ--'

-

A.SSOC

_._-.::....._ _ _ _~~i:.l

IBM

'I)

E HER C U L F S " I_tJS_f) R ~,______ ._.__ __.JJ_!..bli.!.~~J.JJ;U:i._p Eb______
OMINN PO~ER + LIGHT
DULUTH ~INN

R

v: A SA r<. I

S

U I'\J I V E 1.( SIT Y

c

1-\ L T U . UN r-= [)~_~ H

P t\ L 0

FY

117 0

._____J~!;B.I5£l..J::;)/_~ !-\L. 1£-=-__..
It-)25
f)

R RD M ~EATHE~LY CO
S r':!.l.Ul:i....
_________ r_~

JOHNSON
._~QJ;.L

1 H 00
1 62 0

L P 1-,( INC E T

ij \\' AN G _. _ _ _ _ _ _ _ _ _.-=C~~E-::..:.:\E:: .:.8!.~E
·
L E '(__ ~_~I_E;j~.LLF I
INDIVERr
r~ LSI1\!CLAlk OIL e()~~p

I

J 0 ~_E _C AbJ_F
N. J •

P l~ INC E T (l N

L

(J f\I

4

CHE'=L.~LL~,~i£~_1:.£~I,.._J£_._ .. ___

360
360

1 1 30
360
1 62'0

360
. __.~_____L(ULQ___.

JONAS
C RoeHl CHEi"ICi\L ell
3£:!·17 l'.'lIDLAND ,'iICI-'j
leon
JONES
C E lJ:: N 1\1 (\ + 1_._5 T /-\ Il~'___VtLl_V___ .__-.!..i'..:.:.~A~S H_Y_LLL..t';"_l E:: f\!!j
1620
JUL IAN
F c} C 0 U NT 0 F SA j\J 0 I t: (~O
S /\ N DIE (~() C IX L I F
JS.[iJ =Z_ _--,-.--'--_ _ _ _-=-_ _E==-:_--'L=~~._.l!.I-\ T E f-<-±-.!-::1~i t.:} f~EL _________ IJ_~) i:.f i'if~y__(:.!:~~.lJ=- _____.____ ~.9~_._
t< END RIC K
N H 1\ E C H E S BUT I~\ j,! E P F~ (j U
P () ~~ T NEe HE S T E X fA S I b () 0

JSJ':: Nf\! Y

.. ___._ _ .,, _ _ _ _ .•. _... _~.bJl~

. t!__~....Y..QJ,iL~. __ C.JJ:...'L_b~f!..Y...!.________U:i'O_Q_ _

A

D IJ; j'i

D

Fiv-;ICHIGi\N

\'1

J I !·~~~_. _______ •. _._ ..._.___.______...• __ ._~!:\l:LfJ..~:::!~~~J .?_~. ~·L.~.f.:\...~.J F. _ _ ._._1.J...::.2.L__
EMARATHGN OIL CO
5317 T~XAS CITY TEXAS
11~G

ST/\Tt~

KIEL
KING
KIRKHAiVl
K LEE S
K NO ELL

LAI,ISING j"iICH
1130
J LAF~Ko P()\·.rf,J~~_cH:L__.. _.1t}'.~(_E.U\;E .£lLUFF /-\Hf(
11,.:,~:;',,-,)C==-J__
G KId/vI
S/\N ..JCJSt:: C/~\LIF
1800
G Nt-, U 'I~Q ,,!f:':: TIC S _ _ _. _. _________.-E:.lJ_'= _~: E f'~JJ2:~~ I~ L IE __ . ______l~_~)JL___.
D L U /\ SIC V E G L l' i\ U L E P h: f 1[) !':-) I~ C () V /-\ C A V ILL E C t\ L I F
1 1 3 (;

K 0 CH
KOSTER

D

K R lEG E i-~

L ,i\ j·1 A !-~

L/\NDFCK

3(,25

E=./\ST

__ £'~.~!i' r-~< E: E_ PSI t: ---.t.'!....~-.Y_~__
3 6 ~~____
K H C /-\ L P U L Y C U L L l::: (; t:
p () j. i 0 I~ /-\ C i\ L I F '
1
N CANOGA ELECTRONJC~
CANOGA PARK CALIF
11
---------... --- .. _----------J E \.' EST U~ 1'1 C U Vi T I'~ C [) I-~ P S I 0 U x CIT Y I () ~'i A
36 0

J

K F( lEG E
KUREK
LAC 0 U R S I ERE
J.:: A I-ific_R S

lJi-'IIV

fVl It·.:) j",

10"

-~-.----.----

F L v./-\ H 0 S P I
J R I hi'"
_ _ _ _---=-B ~'/ I 6 I,,;

T~.'=___.__ .. __~ ______ ;~~~~~__~~J.:Le:..f::!~

__!.::Lf_ ~~ ~~ ;.\ s ~SA ___________L2..?Q._,._

C t'l I C A G ()

1S

I l. L

°

0

LAI'·~D\'jEHR
S /\ ~,l J 0 SEC AL I F
12.00
LANE
S E OK L i\H 0:1,; I~ U I,d V t.:-. PSI I..~ ______ .~'J (Ji3.Ll!:~':LJ2!~l:_A _______________3 C?_o___ _
LANE
\"j GCHICD ST.!:I..TE CULLEC;c=
CHICO C/\L IF
1620
__L /'. . F< U E
H H ldJ::L!.Y.._~~E-.-:?_.~!.._l) A 1<' CJ IJ:..~ ______.. __._____ 'y C::J3.i JJ..b.kJJ-l 1,1 oS t:"l..l.L~.~.LLIlL._____~ 6 ('L-r~
LA\'!REr'-lCE, Jr~
\'} \fIltH;;
POUGHKEEPSIE I':Y
1(300
LA Y_N..c.iG-=-_ _ _ _ _ _ _ _ _---.:.:..V'--=L:;,...S_-Ut'-!DS.TP I-\h!~~. I I~ -!:'.l..C1N __ .__~~Q~~.~J2kD__ l~ _______...__.__ ..11 3(2 __
E S U t\J I V D F T (1 f< UN T (l
-I CJ 1 T 0 F< U t,JT U () 0! T C f:, j',! /lD A
1 6:2 (;
LEE
LEE
J
A
Ut,!
I
V
DF
HI.
SSACt-IUSr:: TT S 1 1 07 A,\IHE ~.(S T Ii; ~\SS
1620
- - - --_._-------

K 1-\ 1',1 S A SCI T Y tv1 n
L MI.Ji~-.l'!...!..r_.____ _
18Q.. .;,; O_ _
SAN JOSE CALIF
1130
BeLL I NGH/\;.. l Vl ASH
1800
POUGHKEEPS IE-·t\-!-o-Y-c-------

L E HR
F< V P /\ N H ft. N D L E l:-: .L\ S T E ~ ~ i'J
L E:..:..N.:...T~_ _ _ _ _ _ _ _ _---:F< SIb i·1
LESTER
. G
I~~
LEVY
l. NI'/iO!:3 I L 0 I L CU
-CF\:vf·~s--------·--~ N -,J I lJj:~·-·----------

E~

LEWIS
E
SYLVANIA
BUFFALO NY·
360
LIN I C K E F S 0 F TVI ARE --R' E S() U ~~ C1::: S
LOS· ,i\ N C; E CE s C .£\ L. I F
36 0
LIPSOr,J
A LVIRGINIJ-\ ELECT + P~'!f< 10£:~t~ RICHf\101,11) VA.
360
-L I T T r · , l A N - - - - - - - - - - I - £:30 I SE CASC·/\L.>G:-c·Cf~~-·------Ji:)Tsf~I-D;~;i"(J-·~---·-··-··----1i3--O-~~'"
LOMAS

W AlUM
P---I-Hfvl

LONE~~GAN

SAN JOSE CALIF
\In'lITE PLAINS N.Y.

----------.-----------

------------.---'1,

- - - -..--1\--.

--_._----_._--- ._--

"--..-/

. - - - - - - - - - - - - - - - ._------_.----_._--------_._-_. .._-------_._-_ -----_ _-_.•_----...

...

-----.----~.-

.......- ...

- - - _........._.._ . _ - -

.

..

-----0-

· t""

..:..-..

j

t . ·.. jt#"S "#· . ff.'ffJW······· W2Mif'itiiWRWWiWSiiitw -r-' Wf"-,"R[
n

~-

..

-.-"----------_._---------'-----------------_...------_.---------------------_._--------_

-------------------------_._------------------------------_._---------.....,-"PAGE

~s

I S~A.J2l.Q__~J~(:J _._~J_)___

.---'-'--=-.-'--_ _ _ _ _ _ _ _LYLJ.l~,JG.

LOVE

1120 H 1 Ci<..~_lLL_';:

tvi A I Ht·i

L UF3 Y
\'.1 K C U I~ 1'1
LUI< 1 N S
J C UN I V
,. . :L:;:-. . ;.Y..:C:...;,I-_i;..E:;:;.:=_ _ _ _ _ _ _ _,_ _..::.D::...-::.:.\'i.';:S;.;,:.UfA

P P. U r~~..I~~S:~~~~l~.s2g
() F I<. E ~'J T U C K Y
1 ~) 5 3

Ny _________ .-_~16iL.
CLEVELAND OH 10
11:30
DO if.' hI E: H :2__ G ~< 0 V Ll L L
1 b QJL
L ~ X 11"; G T c) N K Y
1 t3 0 0

'=-______,__.__ ._._____.____r_..-f;.l-_.._~_s._(...vJ~.P cL._~ 1\!,.._1E.

1 f.HliL:

LYNCH
S AUS REDUCT I LJi'-l CD
EAST CH ICAGO IND
1130
___f'Ji ~C  A
SA I:J J D S E ( A L I F'

J

ES I

P
R
R

K S U I\J 0 I L C (l
V' I H jvi
SSUNDSTRAND

j\!

AVIATION

DENVE~~

1 H 00
1 a 00
1 1 :-5 ()

360

COLD

__~:i.AYER
MC GUIRE
S
(·i e l L V A 1 I'.]
I?
Me KINNON
G
rviC LAUGHL IN
E
jv; CPA H I L .
R
r·./;c au AR F~ I E _ £ .
j\':CCALL
E

--OE A C HE:' f.( ~!
,\ 1C I [\J T Y R E,

R ~HITE CO
DENVER COLO
1130
P F~ () [) LJ_~ T S +~tj E :"./ _ _ _ _ _A_~I-=-~ N T f.lJL N P J\
~i?.Q __
JIBM
ENDICOTT NoYo
360
EPutLh) C SJz.£:..~.J CI~_. CG __._ _ _ _ [).f:::I\!VE r.:~ CCJl,-_~ __________~§_(~..Q__
e c; [.: ~,! F.::r~ A L D Y !,·jfd·: I C 5
G R () TeN C (J N j\j
3 60
p.E; ~-.&~~_'LI..__ _ _ _~ __.___ . . __ .Y~~In.f:li.t·~_D C_.~.t:~t! !\[) 0.
. 3 (2i!_
Hlbrv; cu
12HJ<;i ST Pt,UL j.'IIi'.li-J
360
WKEN

f~ A

I k

N_-'Y..QI: LEU \'~_ C I~.l_~~.f.~/ C A..?~. ~..!) J~--.J (l fj

JR

tv; F H L

J

C CH I C (j
\-.1 I ['.;, i

fJ K Y
1 1 30
o
L [) E ~I
L R (; E r~ D Y h! cur ~ v t\ I I-<
~) 2 7 b SA f\! D I f. (~O C J\ L I F
1e 0 0
------------------------------_.
-------- --OLSON
R wIbM
CHICAGO ILL
369

_.t:0 C H ______ ..::>_?.2._

__
O_R.~0_F_F_. ____::... ________t\_1_J_L_F.._:I_:.._F<.__~IJ:: Ci.'- t~~ R _1. hi ~_. _____ ~ ____.__ G 1-< I:~:I.!:_.?:.!\ p I !~ s
ORTdf\LS
~/; H\'iESTERN FA~,b,,.-_ _ • _ _ _ _ _ _ _ _ _ .•_ _ •_ _ _ _ _ _ _ _ _· -•...- - - - - - - - - - - - - - -

----_._-----------_._-------_._--_.

__._-----------_._.--------

..

~-

· ..
PAGE

PINFIELD

E

PODOLSI< Y

J

R ~L!~} V_.Ql:~_~_~]-':=-() - fil ~12~ F: N T __
L F A I R CHI L D S E: [.'j I C U f\J D C T
A ___I 8/'!i F 8P. N C;.S,______

P_QLLE
POLYZOIDES
.. P 0 FZZ I'J.!S. _____

G
J

PO\'1ELL
PF~

J

DH0

(J I<

E. F<

C H E 1\: I C /\ L

"If EST j'-'U~I S I~.g C ()~ . _ __
jvj T
V I E Vi CAL I F

6.

IV-

P J\ F< IS. F 1:<"6 j-'·l C E ____.__________--.l1:i..illL__ _

C U F< P

N I A G A f-.1 A F t\ L L S

N. Y •

1 1 .3 0

_!?.LAF ~~.Y£.I.IX;__~J:.Lb:J _~_..__________J2..GIEQJ:~_~U~G.l:L:."_.~ ___ ~-_______Lb-OJ1____
EUI\1IV

OF

SCJ

D,b,i I
U-1'1-I-V-E_
~~ SIT Y "/1 ISS ISS I P P I
1
. _ - - - - _ . _ - - - - - - - - - -62
- -0 - - -

R 0 S S T 1\ U 1\1 I V 0 F

f.ti ISS ISS I P P I

UN

r V E ~~ SIT Y

(-"\ ISS ISS I P P I

___8_~~f'-_!________,____ ,__ ,.J~__!_9J..E::vr~ ~~ R F:..~.t~J:\F< C/-~_\J2. __ . _____£.<...1.~J~lL!Jl~ID~. 6'=. ,!J:_
CH I Ct,

SAADAT

:3 (") C
1 t~()_(L. __ _

ILL

(~()

360

____.b!t~:}'__YJlL~~c.;~IL.N y_o________.____

SI-\ fv1UFLS

CI

SAf\jDEFU F<
SAUNDERS

SAN
J~J=.._I!~t\y_L~ ~ t=: R

SAUTER
_;; C H /.'I~-,,[).:..:.F=-=._ _ _ _ _ _ _ _ _ _~[):......E

~ARINO

S.___~s.S r.:.t\ I-< ~...!i.. ____.~~.~:.._ H t\ F~T f
SA t'J

J

CALIF

1130

() RJL~.nr-1 01,'_ _ _ _ _ _ _ _ ~ 6 Q _____
(J SEC 1\ L

::,60

IF

lilll_________ ~____..,. _____._____.sA:A __ .!>LC,L5..Lc;__ ~..(J).,LLL_ _______~_l..f..i.Q.Q___~

K C L II ~ I< S () j',j

C U L L F:: (; f:'-:

S CHI F T N E R

S

S C H CJ D ITS C H

(~ _E.L~I~)JJ.;;_j\l\iJ~~L _ _ _ _ _ _ _ _ _

SCHORO\:.j

tvi
Cc.I',j F()f-~ F~ES r,;r::D Ue I .
EVA~"ST(JN
ILL
l~?
H L C ?_CJ:!.=t!j~,.~~··~ J\f-<"Q__.___________ ~!-\ YJ:L~\ gD C .0J- I F _ _ _ _ _ _ _ _ _.L~__
J
f:: A S T iv": {I, ,',1 K Cl D ,t\ K
1 03 S ~~ n C HE S T E ~;.: i\i Y
113 0
P E t\F-~ TH ur:< c; rviC K El::
SAr,,! F FO\ f'.IC I SC tJ C 1\ L I t=
1 1 30
-=-____,_
__________ .
F Ofl.r:RCJ CUf.;;·I/-\!'JDt::f-!
N()Pj.l/\~\! OKL;,-\
1f)(J()

S C H R AD E R
S CUD D E R
SC ULL Y
SE~UJUSS

I

S
J

FlbV

SHOEtJIAI 60

0'-"'_·
__________2____~2.~D~ __ ._______________ .___________S!.~~I_~~ ___ ~~_~.~~~_} C!2.._c;/\L. ~~ ______ ~?i:.!J___ ~
H-iJ:------····-·--'-·--··'-'---·-·--------'--0"~:.j"I-:ti~--~p L

S TEE L E L L I H 1\'1

-

0_0_.__.

PA

.•

.

d t t'W

i····t-\·ttf···'···t··#itf'&·h»'i%fHi6d-f1.)"¥f!'iffbifid*8¥ijij"·····irp·OO·p·,.·wIT WUry"f·r·w·-··'

.

.

l'i!iiAiRilNlljljp'ymflfWR

..

"""

•.

----_._-------_._-_._.•

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

-.-~.- ... - '-" ,---

7

---

SDgl.!_._CH~!::;J~~.~ _____ .

T

WHALCON
_ _ _R_' F I 8;'·1

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

~-.------

---~-----.--.--~---.

________ D

STEIN.
STEINHART

.

PAGE

-_..__ ._-------_~~~~ERG

__

S TEPHEf~SDN

J

PIT '(~!2~}l~£:; __ ~L -=.I.:...F_ __

11_:;tD__ _

INTERNATIONAL
360
NEIl! YOf~K CITY No Y.
. ______________\"JI-u.I[L_E1-Al_~_~::..._'_'N...:"......;Y:......:::...e_ _ _ _ _____"36_s T f:,:.NFg~HYSICS II'.:Tt'::KI,!ATICH,IAL
SAN Lf:ANDf~O CALIF
360
R P \'-i H I ~~ l.~ p ®._~lr·! ~ _____;; 3 ~1 1 S -r J [i S L;J:>J::~I C H_ _ _ _ _ _ _-=-1.=8Jl.Q._
G WIR~
WHITE ~LAINS NnYo
H i·I,l t3~.. \ CQF~~ ______.__ .._. ______ S !LVEP SPf-( H~G r--·'i.:-..)_ _ __
1 1 0°_
V

V!ARREN

~Iif.:::

--

AF I _~t!_.. R ..I::~Jii? __<;'f.~ti /\ I) A_._•.':L~) -(.~....!:~.ti~J ~·:·0:!_~:.~_5J~.!.~?A,_._______1_L~i~ __.
L D 0 ~,; C H E (.j I C J\ L
PIT T SHU I-! (~ C /\ L I F
3 60

f::f,~OCl<

IA,

ISLAND

r=_()r_

__._ _ _ _ ~ FU I\! I

;.,1 I

Cf'h

o 59. ., ."""-:-, PL/1HAS MORE CONCISE • EXPRESSION .. PROBLEM I NIT I AL I Z[ ARRA Y A AND COMPUTE o FOR ALL I. J FORTRAN oI MENS I ON .5 10 A (i 00 • 100) 100 ) DO 5 1=1,100 DO 5 J :: 1 ~ 100 DO 5 K:1J100· A (I, J ~ K); 0 .0 DO 10 1::: 1 100 DO 10 J:; 1 100 o A (I,J~2)::B (IJJ)+ M (I}MS(6),J) Del A 600,100,100); A:.O; A (~~~) 2): B+Ml*~ MS( 6)~ *); o o PL/l HAS BETTER I NTERr~UPT CONTROL PROBLEM " ALLOW FLOATING POINT UNDERFLOW FIRST 100 T I. [vIES THEN KILL JOB. FORTRA.N REQUIRES ASSElvlBL YlANGUAGE ROUTINE. ON UNDERFLOW BEGIN~ DCL COUNT FIXED~3) IF PUT COUNT INIT(O)j = 99 THEN D0) LIST (1100 U~JDE~FLOWSI) SiGNAL FINISH) SKI pel) ., END) COUNT:::: COUNT + 1 ) RETURN) END) 6/. -----,,-,,----------,,--""'---"'-,--,,-""""''',,'''''''''''''''' PL/l HA$ MORE EXTENSIVE DATA EDITING SOURCE TAR(;FT 00100 'l ~ 100 "'0203 1 2 3 1234.56 1.234.56 12 1 001 .23 $1 .23 -123 $1 .23CR 123 123 -123 123 "2 +" - ~- o PL/l HAS SUPERIOR ARRAY HANDLING EXAfviPLES DECLARE A(-5~-25, 17~18); DO 1=-5 TO -25 BY -5 ) - 25 TO - 30 BY - 1 ) WH I LE ( X~19. 6) ) A=B+C/Ej o. WHERE A)B)C)AND E ARE ALL N-DIMENSIONAL ARRAYS ,...- ..----.-..... -.--------.. -----.-.... -~-.--.----.~.--.--_. __._._._---- ·c· PL/l HAS ~RE BUILT IN FUNCTIONS EXA~iIPLES .', TIME RETURNS CHARACTER STRING YYMMDD RETURNS CHARACTER STRING HHMMSSTTT SUM(X) PROO(X) RETURNS SUM OF ALL ELEMENTS ·OF X RETURNS PRODUCT·OF ALL ELEMENTS. OF X . DATE o c . PL/' HAS CHARACTER.STRING AND BIT STRING PROCESSING . EXA>iPLES DCL SYi,iPTOMS BH( 64) P.ACKED) HEADACHE BIT(l) DEFINED SYivIPTO[vIS POS I T I ON ( 25) ) FE VER BI T( 1) DEF I NED SYiviPTOiv1S POS I T I or~ (35) ; IF HEADACHEf1FEVER THEN GO TO ASPIRIN; o ELSE GO TO PENECILLIN~ 8IT(64) REQUIRES 8 BYTES OF STORAGE X :'XYCOlviA8C!\!iON' j Y-= I NDEX( X, 1 COrvi I); Z ;::; I NDEX( )( J I r' 10 N~ ; A·~ SUBSTR(X) Y ,3) II SU3sm(x, Z)3) j 6$. ·-.-......---.--~"-.-.-"~-~"."---.~----- --------..- ... ---"-..... ..... ~."..".--..............-........ ,,''' ..................... ,. " I I " .,I • I ~ ,. ~. ('.!~ , . o IN ADDITION PL/l OFFERS CQt-/iPILE TliliE CAPABILITY (i"iACROS) LIST PROCESSING jviUL T I ~ TASK I NG DYNAMIC ALLOCATION AND RELEASE OF EXTENSIVE DEBUGGING EXTENSIVE I/O CAPABILITY STORAG~ .0 66. fl. I· hooker DYNAMIC MODEL SIMULATOR FOR THE IBM 1. . l.- (o.! 1130 by George D. Polyzoides Hooker Chemical Corporation, Niagara Falls, New York The Dynamic Model Simulator is a chain of FORTRAN source programs that permits the IBM 1130 user to investigate in depth the dynamic behavior of physical systems that can be modeled into linear or nonlinear ordinary differential equations. It can be used for the investigation of a wide range of engineering and mathematical problems from reaction kinetics and reactor responses to the design of electrical networks and struct~ral assemblies. The system does not require familiarity with analog computers although in a way it forces the IBM 1130 hardware to perform the function of an analog computer while at the same time it offers the digital computer advantages of random memory access and ten digi t (extended) precision. c The input consists of Engli sh conrnand words (START, WAIT, RESET, etc.) and numeric data which are rC0d in free tormal. The system output includes tabulated values of the variables at specified intervals, a table of the variables involved and detai led error and information messages. Plotting of the variables is also available as an option. System Source Language: FORTRAN IV, Level E System HardvJare Requi rements: 1131 CPU-8K, one 2315 disk cartridge Card ;{eclder 1132 Printer Ben son· L e h ne r 305 0 i 9 ita 1 Inc reme n tal P lot t e r (op t i ana 1) 1l~4~ fa ? DYNAMIC MODEL SIMULATOR FOR THE IBM 1130 SYSTEM George D. Po1yzoides Hooker Chemical Corporation December ·1967 o t \ II hooker NIAGARA FALLS, NEW YORK 14302, PHONE (716) 285-6655 ABSTRAC! The Dynamic Model Simulator (DYNAMO) consists of a series of FORTRAN IV programs that allow the IBM 1130 user to investigate with detail and accuracy the behavior of physical systems that can be modeled into linear or nonlinear ordinary differential equations. The DYNAMO Simulator can be of great help to engineers and scientists who consider such time consuming problems as the investigation of the transient behavior of chemical reaction systems, electrical networks, process variables and control systems. c The input to the DYNAMO Simulator ia in free format and in the form of distinct key words and numbers. The digital computer setup prohibits real time operation but it offers the additional advantages of accuracy, data storage and detailed plotting. Besides the input-output and calculation mainlines DYNAMD utilizes the 1130 Plotting System, a plotting software package created by Hooker's Systems Engineering Group. The minimum equ'ipment requirements for program execution arel 1131-cPU-SK-2B 1442 Card Reader and 1132 Printer The Plots (optional) can be obtained through an on line digital plotter (.OOS"/step). o II hooker o TABLE OF CONTENTS Page INTRODUCTION PART ONE GENERAL INFORMATION A) PROGRAM CHARACTERISTICS 5-7 B) PROGRAMMITNG TECHNIQUES 8-13 PARTTW) EXAMPLES OF APPLICATIONS CASE ONE A CONTINUOUS STIRRED REACTOR BATTERY 14 CASE DESIGN OF AN RLC CIRCUIT 15a- T~ APPENDIX A DYNAMO INPl1r LANGUAGE Q- ~ p 17 APPENDIX B PLOTTING INSTRUCTIONS 21 a..-b APPENDIX C FORTRAN-ALGEBRAIC EQUIVALENCE OF THE MODEL 22- 24 APPENDIX D CONTENTS OF THE STANDARDS FILE 24 - 0 o II hooker 3 INTRODUCTION The expansion of the range of the applicati.ons of digital computers into fields that were the traditional domain of analog computers is a rather recent trend that has produced such interesting results as the GPSS, the CONSIM, the CSMP, the PACTOLUS and other simulation systems. The DYNAMO Simulator does not claim "a place in the sun" among these systems. and less sophisticated. Its mode of operations is more restricted The object of DYNAMO is the solution of ordinary differential equations and the emphasis is on the mathematics rather than the block diagrams. Since differential equations and block diagrams are frequently equivalent in describing a system, it follows that in many o instances DYNAMO can be used in obtaining results similar to the ones obtained from larger and more complicated systems. The point ot decision when programming for analog to digital equivalences is whether analog procedures and nomenclatures should be carried over to the digital system's specifications. For example, should gain be labeled as such, or should it be implied by a multiplication? One can argue about the advantages and the nuisances of both types of approach. The DYNAMO Simulator approaches the problem from the point of view of the person who has more experience in digital than in analog computation. This implies that analog computer nomenclature, wiring o 71. - - - - - - - - - - - - - - - - , - - - -_ _ _ _ _ _ _ _ _,_ _w.......... • II hooker 4 diagrams, and scaling are not necessary to deaeribe and set up the problem. The analog concepts, although still _i ..ent afid helpful, tend to fall in the background ~ile ~amii!arlty withdiglta1 concepts becomes essential. o gm t"iH8U'i't··'#·¥ss·_···· T·..P--····-y·· II hooker s PART ONE o PROGRAM CHARACTERISTICS A) INPUT REQUIREMENTS The input to the DYNAMO Simulator consists of some key words and numeric data. The programs have been ~itten in such a way as to permit experimentation with the differential equations that describe the model. The execution of the programs can be interrupted at five distinct points and restarted at some later time without loss of continuity. 1. Input Language The key input words or commands constitute a very elementary input language •. The term "language" is applicable only as far as it is understood as the substitution of a numeric code with English words. The input commands can be divided into six categories: o i) Integration Information commands: They define the step length and interval of the integration, value of the equation coefficients, etc.) CONTROL, COEF ii) iii) iv) v) vi) Identification commands: TITLE, TABLE Initial conditions commands: START, RESET, REPEAT, RESTART Utility commands.t SETUP, LOG, NOLOG End Indicator commands: WAIT, END, HALT Output commands: PLOT (8ee Appendix B), LIST, FILE For those interested in more details the DYNAMO input language is presented in more length in Appendix A. c· ...........•-.--.---..- .....-.~~----.. _._-_._ .............................._.............._......•--.. .. '~ -~ ..... ~-~----------------- II hooker 6 2.• ' Input Procedures The DYNAMO commands and the required numeric data can be entered through punched cards or the 1131 console. during program execution. o The two input modes can be alternated All commands are listed on. the 1131 console, but listing can be stopped upon use of the NOLOG command. The SETUP command can be used to reset the system standard files (see Appendix D). All commands and data are entered on a free format basis. special plotting instructions are only sequence dependent. The More will be said about free format in subsequent sections. Upon detection of F- type input errors in the numeric data or an erroneous conmand the user has the option of causing a "PAUSE" and correcting the error. MOre serious logic errors (i.e. no initial conditions specification) cause exits to the monitor. The files containing the standards for the system are not closed and most of the times the error can be corrected and the run can be restarted without loss of continuity. 3. o The Mathematical Model All the first order ordinary differential equations describing the model must be previously stored as a function subprogram. The present dimensioning allocations allow a maximum of twenty variables (equations). These ordinary differential equations may be linear or nonlinear. Second or higher order equations can be expressed as two or more equivalent first order equations. The coefficients of the equation terms can be () II hoolier o 7 variable and their values must be present during the input step. The DYNAMO Simulator will accept any first order differential which can be arranged in the formr* - iwhere Yi is the i~h dependent variable and x is the independent variable. EXAMPLE: Algebraie expression< ~'I: '+- • C~ Y2 = S IN X'h 5 Yi DYNAMO FORTRAN: The value of L is determined in the calling mainline. () The function subprogram must contain a computed GO TO statement so that the appropriate derivative value for each variable is selected. Appendix C contains sample subprograms in both algebraic and FORTRAN notations. * Other equation forms can be expressed in the form of equation -1after some mathematical manipulation. o _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _''''''''''''''''_ _ _ _ -c II hooker B) 8 o PROGRAMMING TECHNIQUES The present version of the program consists of two input mainlines, an error checking mainline, the mainline that solves the differential equations and the mainline that generates the plotting specifications. plotting is accomplished through a separate software package. The actual Due to the number of CALL LINK'$ that is involved the majority of the programs have been stored in core image to allow for fast loading. 1. System Standards A seventy (70) digit integer vector is initialized and then continuously updated and maintained through each execution of the DYNAMO programs. Appendix D contains a list of the information contained in the vector. The standards can be reset by using a special "standards generation" program or by using the SETUP command during the program execution. 2. The predictor-Corrector method for numerical integration. The solution of the differential equations describing the model is the most vital part of DYNAMO. The Predictor-Corrector method of Hamming(l) has been found to fulfill the important considerations of stability, accuracy and relative calculation speed. No attempt will be made here to d~scuss the method in detail. Any such effort would be a reproduction of the excellent article by Ralston(2) descrfbing the details. The limited information to be presented o 76. "u,a" : - II hOOker 9 o in this paper is here just for clarifying the overall approach. Given the values of M dependent variables (Y) and an independent variable (X) at four equispaced points in the X domain (0, 1, 2, 3) the predictor corrector method (fifth order accuracy) is a means for obtaining the M values of (Y) at point (4). This pr.ocedure can be generalized by setting the four known points of the domain as n-3, n-2, n-l, and n and by considering the points to be obtained as the x domain value becomes Xntl. A set of four equations is used for each ith variable (i=l,M) and this -t procedure will repeated until xn+l reaches a present value: i) ii) The predictor equation gives a rough estimate of Y(i,n+l) r" •. :: Y(L J n. ~) .. ( 4~/:3") ~ ( 2 ti J( ~.)"tt) _ ~ '( ~) n _I) .. 2 ~ ~ I ( ) "- 2)) - 2- The modifier and corrector equations eliminate the need for iterative convergencez o - 4- where~t\-('Y\) is the trunc'a.tion error from the last step, ~' is ~~e. den".~.~ c.\'I"4 "I:' ~he Inh1'\lr.\ ~,"""~~n 'IC."'J~,,-,,1"_1.,"ft_l _.... 4 c.f d Yo" •• III) The final equation takes the form: Y( i.) (lTC) -= Cn~' -4- ...9.. (-p C',' 12.1 V,,+I- ",""J wher~" ...-(1\+:)iB the present truncation step. From the point of view of calculations the only additional requirement is that the values for from the initial conditions • y( ~-,1) y( t ,K), where (K=2,4) must be calculated before equations (2-5) can be executed. This initial step, conunonly called the STARTER consists of a first order o Newtonian extrapolation and an iterative convergence technique described in (2). 77 _ _ _ _ _ _ _ _ _ _ _ _,_ _ _ _ _ _ _ _ _ _ _ _ _ .~ _ _ "~~O"··· II hooker 10 Stability checks have been incorporated in the integration routines. The user can check the stability of the calculations by using DATA SWiTCH 4 o during the execution of the program. 3. Data co~version from extended to standard precision. In order to minimize the accumulation of the inherent roundoff errors, the DYNAMO mainlines (with the exception of the plot generation mainline) have been compiled in extended precision. of standard precision mainlines. The 1130 Plotting System is compos~d The DYNAMO data must be converted into standard precision before they are stored in the files from where the plotting mainlines are to pick them up. Conversion is accomplished by equivalencing the extended precision floating point values of X and Y(i,k) to a three digit vector 3 and by creating the new integers IY(20,2) and rx(20). The technique can be outlined as fo11owsr i) Equivalence, o -- S , -.~I\A. NTI5~A J(2) j(~) ii) 3 2 /~> 'NV.l NI V·.lN3\tJdlflJ -=IJ I f\[]I.l:J~ ~ I II hooker 15 CASE No. 2 -0 Design of an RLC circuit (5) The investigation of the transient behavior of electrical networks is another potential area of applications. The signle loop RLC circuit pictured below is a textbook example of differential equation solving. The diff. equations describing the transient characteristics of the circuit arel Currents L £ (~') + d+ z R.dt ... .!. L =0 d+ C Voltage (across the capacitor): wherel JV!Jt = t~ R i = current amp L = inductance henry C = capacitance farad R = resistance ohm 1----------. L .. c ClOh E = potential v= voltage -- volts '~t 5~1.'" .t t~ to tt .. ." The behavior of such a circuit will be investigated for three casess a) over damping b) critical damping c) underdamping. This will be accomplished by using the COEF command to set appropriate values for R, L, and C. The REPEAT command will cause continuous execution with the original initial conditions. The next pages show the input requirements and the resulting output (the plotting instructions have been omitted for the sake of brevity). o TITLE RLC CIRCUIT CALCULATIONS-OVEkUAMPED TABL.E 1 1 1 1 1 1 1 1 1 1 1 1 1 1 TH~ ,CAS~ INITIAL CONDITIONS FUR THE RUN ARE A) B) I(O)=U V(U)=Q (D(l)/OT).O = (E-VCO)/l = 4 E) THE CIRCUIT POTtNTIAL IS 4 VOLTS VARIABLE COEFFICIENTS NUMBER 1 RE~lSTANCt NUMBER 2 CAPACITANCE NUMBER 3 INDUCTANCE C) OUTPUT TIME IN SECONDS - FIRST COLUMN CURRtNT IN CIRCUIT - THIkD CULUMN VOLTAGE A'ROSS CAPACITOR - FUURTH COEF 1 3.0 1.0' 1.U 2 3 Ci CONTROL 6 1 2 , COLUM~ 3 10. .001 3 6 4 1 0 0 START o. o. o. '4. , LIST 1000 WAIT TITL.E RLC CIRCUIT CALCULATIONS-CRITICALLY DAMPED CASE REPeAT 1 TABL.E 1 SAME INITIAL CONDITIONS AS PREVIOUS RUN CONTROL. '2' 1 "S.O' COEF 1 o 2.0 LIST 1000 WAIT TITL.E RL.C CIRCUIT CALCULATIONS-UNDERDAMPED CASE .. T "''''-REPEAT CONTROL. 1 1 TABLt:: SAME INITIAL CONDITIONS AS COEF 1 LIST B~FORE 1'5 b 1.0 lOU END o 7'0. cW"W "" = "" RLC CIRCUIT CALCULATIONS-OVERDAMPED CASE DYNAMO INFORMATION TABLE 15 C THE INITIAL CONDITIONS FOR THE RUN ARE A) 1(0)=0 B) V(O)=O E) THE CIRCUIT POTENTIAL IS 4 VOLTS VARIABLE COtFFICIENTS NUMBf:.R 1 RESISTANCE NUMBER 2 CAPACITANCt:. NUMBER 3· INDUCTANCE OUTPUT TIME IN SECONDS - FIRST COLUMN CURRtNT IN CIRCUIT - THIRD COLUMN VOLTAGE ACRO~S CAPACITOR - FOURTH COLUMN o 9/, RLC CIRCUIT CALCULATIONS-OVEROAMPED CASE 2 15 D o LIST OF ENTEREO COEFFICIENTS (OEF. NO. 1 THE VALUE IS 0.30000£ U1 COfF. NO. 2 THE VALUE IS O.'lOUOOE '01 COt:.F. NU. 3 THE VALUE IS 0.10000t:. 01 o - --------------------------------------- --~~ 3 RLC CIRCUIT CALCULATIONS-OVERDA~PED C)I RST COLUMN- I NDEPENUt::NT VAR 1 ABLE (X) • 0 CASE O.OOOOOE 00 -0.12472E 00 0.10904E 01 0.65341E 00 0.19999E 01 -0.29337E 00 0.82378E 00 O.1~220E 3000 0.29999E 01 -0.21542E 00 0.56805E 00 0.25112E 01 4000 0.39999E. 01 -0.14813E O() 0.38813E 00 U.29837E 01 5000 0.49999E 01 -0.101181:. 00 0.26493E 00 0.33063E 01 6000 0.59999E 01 -0.690691:.-01 0.180821:. 00 0.35266£ 01 1000 O.69999t:. 01 -0.47141E-01 0.12341E 00 0.36769E 01 8000 0.79999E 01 -0.32174E-01 0.84235[-01 O.37794t. 01 %GO O.S9999E 01 -0.21960E-01 0.57492£-01 0.38495E 01 O.OUOJUE:. OU U.40UOUE 01 100-0 0.99999E 00 2000 , ~ DEPENDENT VARIABLES(Y) FOLLOW SIX PER ROW' au 0 .. 15 E O.OOOOUE 01 o 9~. _.... _- --'---'--.- .. __._-_. - - - - _.. __.__._......................_....__. ~--- 5 ,-.--...-._-......._,.- .. ----..--... --'_. -- ---Rt:€-€tREtt 1 f (;ALCULA T f ON S"C R 1 TIC AL. L. y DAMPED· CAS·t:· -.- '.'-' .. -.- ....---. _.". --- ..-.- .. I 15 F &VNAMO INFORMATI·t}N TABLE ._., .... - -- ... _.....--- ..--... -----SAME--. ffll-f IAt..CONO 1 T IONS AS PRt VI OUS' RUN o o 6 RLC CIRCUIT CALCULATIONS-CRITICALLY DAMPED CASE () LIST OF cNT~RtD COEfFICI~NTS NU. 1 THE VALUt:. IS 0.2UUOOE U1 COl:.F. NO. 2 THt:: VALUE IS O.10UOOE 01 COEF. NO. 3 THE VALUE IS O.10UOUE U1 CO~F. 15 G 9S. ---------_._ ...•...... RLC CIRCUIT _....._............. ...............-_.. _......._-_._................. ... . " "' CALCULATIONS-C~ITICALLY FIRST COLUMN- INDE"'ENDi:.NT VARIABLE(X). UAMPEU CASE 7 15 H DEPENDENT VA~IABLt.S(Y) FULLUW SIX PER 0 U.OOuUOE Ou u.4UUOuE 01 O.OUOOUe: OU O.OuQUOE 00 1000 O.99'i':1':1E 00 0.2381':1E-06 U.1471!>E 01 0.10569t:. 01 2000 0.1':19'i':1E:.. 01 -0.!>4134E 00 O.10826E:.. 01 0.23759t:. 01 3000 0.29':1991:: 01 -0.3982':1E 00 O.59744E 00 0.32034£ 01 4000 0.39999E 01 -0.21978E 00 0.2930?E 00 O.36336E 01 5000 0.49999£ 01 -U.IU780E 00 0.13475E 00 0.3ts3831::. 01 6000 O.59':1':1':1E 01 -0.4'1575E-01 0.59490E-01 0.3.244191: 01 1600 0.15999E 01 -0.689U5E 00 O.20398E 01 0.~6491E 01 01 99 RLC CIRCUIT FIRST COLUM~- IND~PENOENT CALCULATIONS-UNDERDAMP~D VARIABLE(X). CASE DEPENDENT VAkIABL£S(Y) FOLLOW SIX PER ROW 10200 0.10199E 02 -0.28095E-01 0.15698E-01 0.40124£ 01 10300 0.10299E 02 -0.26781E-01 0.12952E-01 0.40138E. 01 10400 0.10399£ 02 -0.25338E-Ol O.10345E-Ol 0.4CJ150t: 01 10500 0.10499£ 02 -U.23791E-01 0.78887E-02 0.4U159E 01 10600 0.10599E. 02 -0.22165E-Ol 0.55902E-02 0.40166E 01 10700 0.10699E 02 -0.20484E-Ol 0.34573E-02 0.40170~ 10800 0.10799E 02 -0.18767E-01 0.14946E-02 0.4U173E 01 10900 0.10899E 02 -0.17035E-Ol -0.29559E-03 0.40173E 01, (Jo 01 0 o j(}{). ------~.-.--.- ... ---.--.~--- o Do . o ~ +~ER Ct-EMICAL cr:R=mA TICN+ cr:R=mATE ENGINEERING . 5 5 ~",..".._ .... - - - t. ..... __ ~ .... ! 4 RLC CIRQJIT ANAL '(515 UNOERDAMPED CASE // CURRENT XXXX / vo rAGE •••• , . . . ... !.._, •----_ t.. ____ 4l c___" L ____ '- ____ L __ - - l. __ - - t.. ___ - / I I / I 3 . "'x 2 3 I / es / I .f- ~ 2 .~ JH f en ! fo l~ 1< ·z o>- ......... ~ ... I .4 ~ l~ ...... ~ ... / d . 11 ~ ......... ~ ... I ~ I- - ... / I- 8 l- 1',/",... 1 B I " "\., / "/ iI,~!', (,' ~ " Jt'''-,}, f' \ \ \, "",~ 1 '" ""0 Dr~----------~~-----------"'. ~ ..--~" , , , , , , , , \' , , , , , , , , !ii' , , , , , , , , 5' , , , ,"-;-1<--....-"--"-- .4 '-....'-..... I , , , , ,4 , , , ELAPSED TIME IN SECONJS I I I I \;1 , I I I , , I I 6' , , I I I I I' '7 I iii .JL...--lL-L-L--lI..--Jl. I' , , ,0' I I a' I I I , I , , , 9' I I I I I I SY!iTDS 0GJNEER1Ni rR1.P tr4 I Ilhooker 16 I would like to Wlderstandlng and paper. th~nk encourage~nt my $upervisor Marliss'O. Bird fot; his throughout the preparation of thil:J The suggestions of G. A. R. considera~le improve~ent of the ~rol1ope D~AMO have resulted in a' c,pabi1ities. o o ;(.'l.. II hooker 17 c APPENDIX A DYNAMO INPUT LANGUAGE # o o II hooker 18 The following is a list of the DYNAMO input commands and the o functions they initiate during the program execution: A) INTEGRATION and STORAGE controll CONTROL M This command causes the program to accept M data cards. These cards may be used to define: a) The number of equations describing the systam, b) The integration increment (delta), d) c) The total integration domain, The initial conditions files to be used, e) storing the integration data on the disk, and f) The frequency for The di.sk record where the first X-Y data are to be stored. COEF This command permits the entering of the values for the variable coefficients of the differential equations. B) o INITIAL CONDITIONS control: START This command permits the entering of the initial conditions for the first step of the calculations. REPEAT M The program will return M-1 steps back and it will begin calculations with the initial conditions of this step. RESTART M Depending on the value of number M an interrupted run can be restarted at different points. RESET The last X-Y record of the previous run is used as the initial conditions of this run. Other integration variables can be Changed through the CONTROL c01lDDB.nd. - ---~.-- .....- - - -... -.- ... -... ......................... ----~- ... - - _._----- .. __._-_.. - Q II hooker 19 C) IDENTIFICATION controll TITLE The contents of the card following the TrTLE card will be printed as a heading to all output pages. TABLE A maximum of twenty cards with information pertinent to the input data or the model can be read and stored with this command. This information is latar printed on the 1132 Printer. D) OUTPUT control: LIST M The calculated results from every Mth integration step will appear on the 1132 Printer. c PLOT M This command specifies that M sets of plotting instructions follow. FILE OP = 'Y\ START =m END = k This command indicates some operation on the data files, depending on the value of the OP code. (storing, listing, punching). M and K indicate the starting and ending records for listing or punching only. When OP is negative no calculations need preceed the file Operation. The number of variables to be dumped or listed is controlled by the CONTROL command. E) utILITY commands I SETUP: This command resets the standards files during program execution. LOG, NOLOG These commands control the listing of the input data on the 1131 console. o Ic.:j -~---------"----------,--.-~--~------ II hooker 20 F) END INDICATORS WAIT Stop input and proceed with execution. "Return for more data. HALT Stop input and pause. ~en the START button is pressed resume execution of the input. END Stop input and proceed with execution. Return to monitor. o II hooker 21 APPENDIX B PLOTTING INSTRUCTIONS c THE CARDS FOLLOWING THE II PLOT M t. COMMAND CONSTITUTE A SIMPLIFIED APPROACH TO DIGITAL PLOTTING. A SET OF PLOTTING SPECIFICATIONS.SIMILAR TO THE ONES LISTED BELOW MUST BE PRESENT FOR EVERY ONE OF THE M PLUTS SPECIFIED. PLOT 2 *** DYNAMO COMMAND**** NUMBER = l TITLE' PLOT NO.· l ' X AXIS TYPE = 12 TITL£' INCHeS OF WATER' MIN • .001 SHIFT = 0 VARIABLES FILE NO. =1 * MAX = .2 C Y LEFT AXIS TYPE=12 TITLl'VOLUMl OF WATER IN LITERS' VARIABLES FILE NO. = 2 LINE = 1000 GRAPH = 4122 C.OoE= 4251 TAG • DIAMETER 2 FEET' FILE NO. =3 LINE = 2511 GRAPH = 4122 CODE = 4281 TAG' DIAMETER 3 FEET' * ** ** INSTRUCTION TO GENERAL PARALLEL X FRAME STOP NUMBER=2 TITLE • SECOND PLOT' • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • STOP • • • • • • • • •• OTHER • • • • • • • • PERMIT ENTERING GENERAL SPECS** • • • • • • • • DYNAMO COMMANDS ** • • • • THE PLOTTING INSTUCTIONS ARE USED TO DEFINE TH~ PLOT TITLE.THE TYPt OF THE AXES( LINEAR,LOGARITHMIC,POLAR ).THE SIZE OF THE AXES( S.S OR /O~ 11 INCHES) AND THEIR MAXIMUM OR MINIMUM LIMITS IF IT IS 50 DESIRED. ~ INPUT FOR DIFFcRtNT AXt5 IS SEPARATED BY . (*) AND THE END OF ALL INPUT FOR THE AXIS CHARACTERISTICS IS INDICATE~ BY C**) • THE FILE NO. IS THE S£UUENCt NUMBER OF THE VARIABLE IN THE FILE OBSERVATIONS. THE FIRST VARIABLE IS· TO BE THE INDtPENOtNT VARIABLt X AND VARIABLES 2 AND 3 ARE TO BE PLOTTED ON THE LEFT HAND Y AXIS. ENTRY IDENTIFIES THt TYPE OF ~INE( CONTINUOUS OR DOTTED) THE** L.INE** AND THE **GRAPH** ENTRY IDENTIFIES THE TYPE OF PLOTt POINTS.LEAST S~UARES.FILL IN LINES. E.T.C.). THE **CODE** ENTRY IDENTIFIES THE CODE FOR THE TAG THAT FOLLOWS IN THE NEXT CARD. THt GENERAL SPECIFICATIONS FOLLOW WITH THt **STOP** CARD INDICATING THE END OF DATA INPUT FOR THE FIRST PLOT. C: iii ItI I' ·1 Ilhooker 22 o APPENDIX C FORTRAN-ALGEBRAIC EQUIVALENCE OF MA'rnEMATICAL MODEL o I/O II hooker 23 0 , 1 '!oll The two systems of differential equations .that were presented in PART TWO have to be converted DYNAMO Simulator. The FORTRAN i8 shown below CASE NO. 1 into function subprograms for use with the format of the differential equation for both of the cases il1ustated on model pp. 14- 16. The CSTR battery This is an example of straight forward application. The derivatives of of the concentrations of the reacting component in each of the tanks with respect to time are identified through subscript J and a computed· GO TO s tat e.men t : o I I DUP *DE~£T~ F I I FOR *EXTENDED P~~CISION *ONE WORD INTEG[RS * A~L liST FUNCTION F(J.L) COMMON JCARD(80) ,LC( 70) ,Arvl,L>ELX,COEF(40) ,INl.)IC(4U) COMMON DIS T ( 6 ,10 ) , X ( 5 ) ,y ( 20,5 ) , I X ( 2 ) , I Y ( 20,2 ) GO TO' 1 9 2 ) ,J 1 F= 1. - Y(1.L) *(1.+ .5*Y(1,L» GO TO 3 2 F= Y(lt~)- Y(2,L)*(1. + .5*Y(2,L) 3 RETURN END / / OUp· *STORE WS UA F III -~- ----------- II hooker 23a ," C "c CASE NO. 2 The RLC ci rcui t This is a case where the higher order derivative must be reduced to a first or-der derivative. The reduction method can be outlined as follows: 1. Set Yl equaJ to the fi rst order derivative "2. The derivative of Yl is the second derivative and it can be expressed in terms of the differential equation. 3. The second equation, describing variable Y2 is the first order derivative, that is, d/dt(Y2) ::: Yl The same type of approach will reduce hi.gher oder equations. I I DUP *DELETE I I FOR *ONE WORD INTEGERS * F LIST ALL *EXTENDED PRECISION FUN CT I 01'.1 F ( J , L ) COMMON JCARD(80) ,LC(70),AM,DELX,COEF(40),lNDIC(40) COMMON DIST{6,lO),X(5),Y(20,5),IX(2),lY(20,2) GO TO (1,2,3},J C ••••••••• FIRST EUUATION IS THE SECOND DERIVATlvt 1 A=(1./COEF(3>)* «1./COEF(2)}*Y(2,L)+COEF(1)*Y(1,L) F= -A GO TO 4 2 F= YC1,L) GO TO 4 3 F=(1./COEF(2»*Y(2,L) 4 RETURN END I I DUP *STORE WS UA F liZ II hOOker 24 c APPENDIX D LIST OF SYSTEM'S OPERATING STANDARDS DYNAMO STANDARDS FILES 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 GENE~ATOR NUMBER OF E~UATIONS 0 PROGRAM RETURN CODE 2 FILE INITIALIZATION INDICATO~ a FILE NUMBER FOR THE FIRST INITIAL COND '0 INTtRRUPTION POINT INDICATOR 0 RUN TITLE INDICATOR SWITCH 0 PLOTTING INDICATO~ SWITCH a INITIAL CONDITION INDICATOR 0 LISTING OPTION SWITCH o LISTING AND/OR PUNCHING OF THt RESULTS o LISTING FRE~U~NCY FOR 1132 PRINTER 100 NUMBER OF PLOTS RtUUESTED o CURRENT INITIAL CONDIT. FILE RECORD o CONTROL COMMAND INDICATOR o LISTING OF THE TABLE OF VARIABLES o UNEV~N FILl ALLOCATION INDICATOR o NEXT INITIAL CONDITIONS FILE RtCO~D o INT~RRUPTED RUN INDICATOR o NO OF INCREMENTS OF THE NUMERICAL INTE o LAST CASE REGARDLtSS OF ALL INDICATORS o DISK USAGE INDICATOR o STORE FREutNCY( RESULTS TO FILE) o RESERVED FOR SY~TEM USE o RESERVED FOR SYSTEM USE o RESERVED FOR SYSTEM USE o LOW BOUND/INITIAL CONDITIONS FILES o MAXIMUM RETURN FOR REPEAT COMMAND o START PUNCHING FROM FILES AT REC. o STOP PUNCHING FROM FILES AT REC. o INDICATOR SWITCH PLOT NO. 1 o PLOT NO. 2 o PLOT NO. 3 o PLOT NO. 4 o PLOT NO. 5 o PLOT NO. 6 o PLOT NO. 7 o PLOT NO. 8 o PLOT NO. 9 o PLOT NO. 10 o PLOT NO. 11 o 1132 PRINTER LINeS/LINE OF OUTPUT PRINTER SKIP CONTROL FILES STORAGE FREW. CONTROL INTEGRATION INTERVAL COUNTER PRINTER LIST CONTROL NO. OF NEXT ENTRY REC. IN DATA FILE 52 53 54 55 a o o o o o o o 49 50 51 o OUTPUT PAGE NUMBER TYPEWRITER LOG CONTROL LISTING FROM FILES STARTS AT REC. LISTING FROM FILES STOPS AT" HEC. RETURN FROM PLOTTING INDICATOR --- ..-~-~-------------"--.--.' -- o o 1 c o o o / I-Y- ~--------~------------------------- ------------------------------------------------""""" II hooker o 2S IBM Publications Manual No. o o H20-0282-0 1130 Continuous Syatem Modeling Program-Program reference manual C26-37S0- IBM 1130 Disk Monitor System-Reference Manual C26-S933-3 IBM 1130 FORTRAN Language B20-0001-0 General Purpose Systems Simulator III II hooker 26 o BIBLIOGRAPHY (1) Hamming R. w. 'Stable Predictor-Corrector Methods for ordinary Differential Equations t J. Assoc. Comp. Mach volume 6, 1959, pp. 37-47 (2) R«lston Anthony 'Numerical integration methods for the solution of ordinary differential equations' Mathern. methods for Digital Computers, chapt. 8. pp 95-109 John Wiley & Sons, Inc. (3) Milne W. E. and 'Fifth-order methods for the numerical solution of ordinary Reynolds R.R. Differential equations J. Assoc. Compo mach. volume 9, 1962, pp. 64-70 (4) ( 5) Wal as S. M. "Reaction Kinetics for Chemical Engineers" McGraw-Hill New York 1959 o Miller K.S and Walsch JaB " I n t rod u c tor y e 1e ct i cal c i r c i u t s" John Wiley and Sons, Inc. (6) pp. 93-97 New York 1960 Franks R.G.E. "Mathematical modeling in Chemical Engineeeing" John Wiley and Sons, Inc. New York 1967 o /10 ~~---------.--.-.- ....... _- mpDf·'?,W""? m .. rWWUTSWRIWUfT' -----YWiSfliSiiHiWi&ir¥bbiHiS"#itit"it¥t"rlridftfijSbi"wWftW··"i"WitbfP"i#&jt'· if" L ·j ... ·.. tr . /1, c l.- Robert L. Cushman ARCON Corporation Wakefield, Massachusetts THREE-BAR AND FOUR-BAR LINKAGE SYSTEM WITH PLOTTED OUTPUT A mathematical model of a linkage system is controlled by an array of In addition, the system simulates turning the entire mechanism about a major axis. The output of the system has yielded some very interesting designs. o In conjunction with this report, a list-oriented free field floating point input program has been developed. This routine enables the control program to modify only specified iteITls of the system input. Under break character control, an autoITlatic ite rative procedure can be set up. Some sample outputs are shov:. n in the enclosed photo . .l ~ i· \:'7 I J (.; .-~---~-- -~---.~-Ar", " ...-~~- ~ ,·,r (/r r,', . r? j' "I.;. Abstract for December Common Meeting inputs to plot out the path of the linkage intersection point. . ft- It!!!"e M ' ,rlW''''.I· L o COMMON San Francisco, California PROJECT: Management Installation Division, Operation Project SUBJECT: The Systems Reference Library SPEAKER: Mr. G. W. Goesch, Manager, Product Publications IBM Corporation, San Jose, California Telephone (408) 227-7100 FOR PRESENTATION: o Monday, December 11, 10:30 AM, Session M. 2. 6 8 Pages Text o //~ The System Reference Library o I'm Gordon Goesch, Product Publications Manager, IBM, San Jose. There is a Product Publications group at each of the Development Laboratories, as well as a Programming Publications group at most of them. And, of course, there is a department in White Plains that prepares Application descriptions. These groups all provide input to the System Reference Library, and that, rather than my own department, is the subject of my remarks. A manual looks quite simple, and sometime sit's hard for our own field people and for customer people to understand why it seems so difficult to get a few manuals written, and then to get them delivered while they are still fresh. There is a great number of manuals that must be kept current and kept in stock, and record-keeping alone is a sizeable task. The System Reference Library is the current method of indexing and classifying system manuals, and is the latest of a series of different methods, each designed to solve the problems that the previous methods couldn't handle. Problems created by new and very complex systems. This method isn't perfect either, as you are well aware, but we are certainly constantly trying to improve it. (And I have one improvement to announce today, a little later. ) c That is the reason I am always happy to talk and listen to groups such as yours about our publications. It gives us an opportunity to discuss with you our Publication Library; its organization, its purpose, and its distribution system - because even with a good system you must understand how to use it if it is to be effective fo r you. I think that this type of a meeting can be a two-way street for information: We explain the principles; you provide feedback. We do get feedback from you via Reader's Comment Forms - we want more of your comments and we certainly appreciate them. I don't know how knowledgeable you are about our publications; therefore, for the benefit of the new members and also for the updating of the veteran members, I'll run through a few slides which I think will tell you the publication story. By the way, you have probably seen the publications display in the main convention lobby. The display, I am sure, contains publications of interest to you. Many of the publications on dis play have been published since your last COMMON meeting. Feel free to examine them in detail but please do not take them away, as there is only one copy of each and we want everyone to benefit from the display. o 1 //;;.a..~::"~"~~:.:1t'~~~~~:'~~~·~.~.........~.acr.~~_~b~:i!ir~".s:"!'L"'~"r:_«~..."'I'J1:?~,£",.f~~·:...~~~~.sr~lf IIJ}':s;Z/tJ()lJ x /1 x' x 1/ /1 x ~ / fi 1,! ):' i/'.>} IJ J~ i I J ! \/ l-..ll! v' ( / -/j x /1 /)!J DD } IISrp;L - - "-'--"-~-'----"'--------"'---------"-"~------'- x o WAD MODUU: . FORMAT SYS 1. NUCLEUS SYS 1. SVCLIB . . ,. . I PDS or SYS 1. UIIo1CLm A('('.!'. Mf"lhodl. D6 '380 Trammmt ...."IP NUCLEUS Supervisor 006'380 SYS 1. U~KUB SYS I. SORTLIB SYS I. COBUB SYS I. FORTLIB SYSI. PLiLIB COBOL FORTRAN Mudulr5 . Library ModulE'S PL I Ltbrary Us.r LIbrary MCJdulf''' Moch...... Module!! Any Va.er PDS SYS I. MACUB I IBM- I U•• r Sort Mf'rgf' OUJf'('t :.u:~~~ : Macros Pr~ram5 Transient Us.r IBM- Prf'cumpilPd Sort Mf'rt::t> COBOL FORTRAN RPG USf'r IBM- Rout'"p, Pro(,fOs5lng sl.lpphf'd Pn)(.'etuiifll: 1 0 roullnes ObJt"('t SUbr(lUtIM& SubrwhM'1 SubroJt inP& Ob)f"ct 5upplird Macros Pr<.t:rams An)' UluPD6 U8er PLl .tatfom.ntl IIBM- ~~~f'SSUlb : ~Ur:l!::l" Pr(~rams Routhlt'6 Any User PD6 or SYS 1. MACUB ModuJ •• Modules Us., Ma('rol Subroutine-. Uler COBOL Ulie, User Subroutines COBOL Slatf'm.nt. Uti"r Statf'mpntl PrO£rams A!:tsf-mbler Sublibrary CORE IMAGE LIBRARY LOAnABLE FORMAT (PIIa ... ) Figure 8. COBOL Subllbrary RELOCATABLE UBRARY SOURCE LIBRARY EDITA!1LE FORMAT (Ob),n modul . . ) TRANSLATABL.E FORMAT (Symbolic) Program library correspondence between OOS/360 and OS/360 ESO Object module or load module TXT RLD Input TXT Obj ect module or load module ~:£ule } Output RLD's OS/360 linkage editor Object module Input TXT Object module 00S/360 linkage editor o Figure 9. 12 Physical difference in linkage editor output of the operating systems Phase } Output BOOK1 CS9 Module CS10 four END E lIBA BOOK2 CSI2 Module CS13 six END F CS 1 CS2 CS 3 BOOK3 CS6 Module CS7 three C58 END G C512 CS 13 Primary Input Data Set CS 6 C5., CS e ENTRY START INCLUDE LIBB(BOOK1) OVERLAY A1 INCLUDE LI8B(BOOK2) OVERLAY A2 INCLUE>E lIBA(800K3) OVERLAY KJ. INCLUDE lI8A(BOOK1) OVERLAY A2 CSll END D Module fivlI OVERLAY A1 INCLUDe lIBA(BOOK2) Output Module librory CSI C52 ~ C54 ill C56 C57 ~ CS9 Q.l2 lIBB BOOK1 BOOK2 CSI Module CS4 Module C52 one C!5 two CS3 END B END A Figure 35. I eill CS12 CS13 entry point START Processing an Overlay Program From Libraries lI8A BOOK1 INSERT CSI ,CS2,CS3 OVERLAY Al INSERT CS4,CS5 OVERLAY A2 INSERT eS6,C57,e58 OVERLAY A2 INSERT eS9,C51O OVERLAY A2 INSERT eSll OVERLAY Al INSERT 012,C513 ENTRY START BOOK2 CSI CS2 CS3 CS4 CS5 e56 C57 eS8 CS9 C510 C511 CS12 <:513 END X CS 1 C5 2 CS 3 Al C5 4 CS 5 I A2 CS 9 CS 10 CS 6 CS 7 C5 8 Output Module Library CSI C52 Pdma'Y Inpul Dolo S e l - - - - - - - - - - . . INCLUDE lIB.A (BOOKl, 800K2) ~ >------I~I ill C54 ill e56 CS7 ~ C59 ~ au C512 C513 entry point START . I Figure 36. o Processing an Overlay Program With Insert statement CS 12 CS 13 I ~~--~~--~~----~----~~ DO caras required program execution IIGO ;;.---- fo~ EXeC PGM-' .LKEO.SYSe-1QO ~/~~~~~--~--~/ and linkage ed1tor control statements I cb~e~t deck(s) IIIS't.SLI~j DO I 1/ , Sf' AC [~_.(_1_0_2_11-'.0,,;,,<2_0_0-,,:....2_0...:,.>..;..>_ _ _ _ _ _ _-. //ISYSU'l!l DO UXjl ;'.lS:'~:;::".A )~,F::"(SYSLMOD». C /1/ UNIT .. SY:.iL.iA.Dl,:,P'(NEW.PASS) /1 ISYSLi~~?.e. __-.P.2~A:~;:>'~,::·';;'t~TiG;:·) ,'::PACg· 002 4 • <::;0,20,1) J. C ll/SYSPRU:T DO IIEDITGOI S,{S~~:"_·l_"'.A,-,--_ _ _ _ _ _ _ _ _ _ _ __ EX?<:._~~]..;:;~.[.lj':'~";:'l' . J.."::. F LIST. L&;T. NCAL' II ILKf.D I JOB 1,S~I:~,~~~~EV~~·1 gUre 26. o The Linkage Editor step of an Edit and Execute Procedure Appendix A: Exarrples of Linkage Editor Processing 43 1 o las I. #?'\~ Vi"f, C... c..t$'- :> . ( ~ \ ~". . ~; \-~ . ( . \ 0 C ~.~.:~, \ ' . ) ) bv h· Ct~ -:. ~ C, '\ t." . \.~ t~ f\\ 0 E.~ {~ --_._-----_._----- --_....__ ._---_ ------_... /i (1 A. \ \ t~\.J J) \ \ \ : ,.~l ~ .... - I I ~ ~. a 3: '-.9 < ~ x j~'" C~ l-lj ~" ...... A --;k<.. \' Ck '-' 0 .......I ~ l ~ II -- ,-20 ::J 3 C"- ""I --;-~ tJI c2. -~:~ :s c: >- " l..JJ 1-{ () \~ Q1. '-../ tj ljJ p.. \!1 if} P ...,:) (- Q \-r A P \!:.. ,.-.. ~ \:1 - ,..-.~ :) <"'\ 0" - :.~ '-J C:L 0 )L <"'\ ~ r;!. -to- tn i....tJ ~':. '--"- '-" '1 W 0 c:: c:: L: c_ VI V1 ..,.~. LJj .,.1 -1 '-A i....U :ll QL f-) 1- -:><"""\ " W '-' '.J..J ,-j .c:.: c..... V1 r. -- r<) ~ It J- ~- l-l L. :J t-=l q p :~ ~ :2 '-../ " )C"_,(,,) \:: ,.. .J') 0 0.... ~ A /~=J VJ ?) -l CJ.- X L1..1 -Z 0 ~ ~ < <::;: ~J ~ (' 8J '-::; ~ ~ s:: --t \...., -.............. ~ 0,r <:.;.) (-- c: C. ~ ~ C c ~ -~ --""" \-1 ~ ~ "'. \j ~ /37 "I!'_k" C(-JTf1I.. 0 G·OED ./Jt1rF} SE;:TS To - CI)-Tr1/.. 0C- /f - DI1ra SE7: : /1(;1 PrSTi5'? i)iJ H~ To /..CCIfTF:. 11 ~[) /;Idd nc: Y'/i e. iJISP::. t; 4 DD D.D DD <.. -------~ -x~ f)fj-jl4 PROG·j?A-fI1 o // •• • //QO ~""'ll\J I'lt) - irl/lv f)/) ,1/ // 1/. II~S{)1?7c}() 7"' ./1 ~I // " .. \.,.1 ~~ ... I (,9 LJ fi;~f:nf)/).4).~ t' /) /')l; . f. (6 O/:VI - __ 'l"~ II?;?C/(' J JS $$6 7\1-0 8)';Z:SJ. . (J Yilil~lllv~/I . ;' . CJ/J /40 . .~-. ---.- ...... ----~.~~-.-- ... -- /1 o r> ~ CHAIN OF SYMBOLIC REFERENCES COMILED W' TH CREATED WITH DATA SET OBJECT MODULE DeB J DCBNAME GET COMPILED WITH OBJECT MODULE ",,-,X ~~. '-.. DATA SET LABEL DDNAME DSNAME DO CONTROL STATEMENT AS INTERPRETED AT JOB TIME SEQUENTIAL ORGANIZATION * CREATE QSAM BSAM * ,x ~.~ 1(3 ~ \ti ADD RETRIEVE UPDATE X X X DA ONLY X X X DA ONLY APPLICABLE TO ALL DEVICES C) o o o ~ ,"",_..;;:' PARTITIONED ORGANIZATION* CREATE BPAMBSAM BPAMQSAM (or BSAM) (ONE MEMBER) "" ;I~,X \.N~ ADD RETRIEVE ' SEQ. X X X REWRITE MEMBER X X X REWRITE MEMBER * DIRECT ACCESS DEVICES ONLY NO UPDATE o o o DIRECT ORGANIZATION* CREATE BSAM ADD RETRIEVE UPDATE X (WRITE- LOAD MODE) BDAM X X X * DIRECT ACCESS DEVICES ONLY >< I W ~ ~ o o C) INDEX SEQUENTIAL ORGANIZATION* ,. CRE·ATE QISAM BISAM -- -t:. ADD RETRIEVE UPDATE SEQ. SEQ. X X X (LOAD MODE) (SCAN MODE) (SCAN MODE) X * DIRECT ACCESS DEVICES ONLY ,,(jl X I "-> RETRIEVE UPDATE DIRECT DIRECT X X ACCESS METHOD SUMMARY ORGANIZATION SEQUENTIAL INDEXED SEQUENTIAL QISAM DIRECT PARTITIONED ACCESS METHOD QSAM BSAM LOAD SCAN BISAM BDAM BPAM PRIMARY MACROINSTRUCTIONS GET,PUT PUTX READ WRITE PUT SETL,GET, PUTX READ WRITE READ WRITE READ,WRITE FIND,STON SYNCHRONIZATION OF PROGRAM WITH INPUT/OUTPUT DEVICE AUTOMATIC CHECK AUTOMATIC AUTOMATIC WAIT WAIT CHECK CHECK RECORD TYPE TRANSMITTED LOGICAL,F,V BLOCK U BLOCK F,V,U LOGICAL F,V LOGICAL F,V LOGICAL F,V BLOCK F,V,U BLOCK (PART OF A MEMBER).] F,V,U ! I , I "- ~~ BUFFER CREATION AND CONSTRUCTION BUILD' GET POOL AUTOMATIC BUILD GET POOL AUTOMATIC BUILD GETPOOL AUTOMATIC BUFFER TECHNIQUE AUTOMATIC: SIMPLE EXCHANGE GETBUF FREEBUF AUTOMATIC: AUTOMATI C: GETBUF FREEBUF SIMPLE SIMPLE DYNAMIC FREEDBUF TRANSMITTAL MODES (WORK AREA/ BUFFER) () MOVE LOCATE SUBSTITUTE - LOCATE MOVE LOCATE ~ BUILD GET POOL AUTOMATIC MOVE - BUILD GET POOL AUTOMATIC - BUILD GETPOOL AUTOMATIC BUILD GETPOOL AUTOMATIC GETBUF FREEBUF DYNAMIC FREEDBUF GETBUF FREEBUF I - o I- I I SYSTEM CONTROL FUNCTIONS OS/36 0 DOS/360 Device independence No ,-Yes DASD extent information XTENT cards with absolute addr~ssing DD cards, DSCB with only space request Space allocation-primary - XTENT cards at job time DADSM Space allocation -secondary XTENT cards at step time DADSM, dynamically Device allocation Fixed at assembly time, but actual device addresses may be changed by job control cards at execution time Dynamic allocation at execution time_ Cataloging data sets No Yes Cataloged procedures No Yes Systems residence 2311" only 2311, 2314, 2301 t 2303 Split systems residence No Yes Libraries 1 source 1 relocatable 1 core image (aU on SYSRES) n source n relocatable n load Private libraries No Yes Job control language Basic, easy to use Extensive and therefore complicated, but use of cataloged procedures helps Link editor Overlay, map Overlay, map, XRE F t mixed load, and object module input Relocatable programs Limited to MPS macro utilities and LIOCS Yes Overlay Fetch CALL SEGLD SEGWT (on any DASD) 22 o /J../') 1 ·1 1·1 I SYSTElvI CO~.TROL FUNCTIONS (Cont.) c·.·, II OS/360, DOS/360 Dynanlic program loading Fetch LINK LOAD XCTL LOAD ATTACH (option 4 only) E.:nd of progl'am EOJ' Return Timing Time of day in all partitions; illtCl'val timer in anyone partition at a time Tim.e of day and interval time.r in any p::Ttition Multiple wait TP only Yes DATA MANAGEMENT DOS/360 .'--- 08/360 Sequential files Yes Yes Partitioned files No Yes Index-sequential files Fixed records only Fixed and variable records, automatic record deletions, dynamic buffers Direct access Fixed records, undefined records; absolute track only. Extended search (to cyl end only) ) multivolumes Fixed. variable, and Wldefined records; absolute and relative track. Automatic insertions, multivolwnes, extended search (to cy I end), dYnamic buffers BTAM No burst mode devices on multiplex channel with TP devices. Official support for 7770/72 and 2780. Support for 2260 local and remote MFT and MVT only. No support for· 7770/72, 2780 I or 2260 local QTAM With multiprogramming option only MF'T and MVT only Graphics No Yes, 22GO and 2250 0 .' DATA MANAGEMENT (Cont.) o Data set specification DTF only DCB, DD, label information User standard labels Sequential: header and trailer Di reet: header index -sequential: none All organizations supported mid '67 Nonstandard labels n program routines 1 system routine Level of support Queued (update, move, locate) Basic (index-sequential, di rect, and work files) EXCP Queued (update, locate) Basic (all access methods) EXCP Buffering 1 or 2 static . (GETBUF, FREEBUF in BTAM only) n dynamiC (OPEN, GETPOOL, BUILD, • GETBUF, FREEBUF macros) LANGUAGES AND SYSTEM COMPONENT SIZES ·0 DOS/360 0 OS/360 DOS/360 Equivalent OS/360 High Performance OS/360 Assembler 10K 18K 44K COBOL 14K 17K 80K FORTRAN 10K 16K P;L/1 10K 44K SORT 10K 17K RPG 10K .15K Link-edit 10K 15K 18K 44K 88K Scheduler 10K 18K 44K lOOK Supervisor + other resident routines for workable system 6K-10K PCP 14-20K MFT: 26-36K MVT: lOOK and up Minimum partition sizes 10K background 2K foregrowid 1 2K foreground 2 PCP: 18K MFT: 18K per partition MVT: 44K per partition 128K (G) 200K (H) ( 24 J4j File Organization DOS/360 OS/36 0 Contiguous with cylinder index Any place on any DASD device Called in from DASD device l\tay reside in core ~rust be single t contiguous extent within volume Can be multiple extents within volume User responsibility Automatic deletion of tagged records Limited to cylinder boundary Can search complete data set Index Seq.: , i Location master index Highest-level index with random processing Prime data area Record deletion ! ... Direct: 1\tultiple track search . , Relative track and block addressing No Track overflow No Yes Partitioned Data Sets No Yes Yes DOS/360 Oc)' OS/360-MFT Ma..-ximum I/O Areas: . Seq. file 2 + work No limit Index seq. direct 1 + work No limit Simple Yes Yes' Exchange No Seq. files only with restrictions . Buffering Techniques: ; Buffer Generation Compile time Compile t or dynamically by OPEN File I/O Characteristics: DTF DCB . Assigned at De',-ice independence Data Set· Concatenation Compile time 'No No : Compile or execution time Yes - within devices using same file organization Yes c \ j ~.-I 1/ o· Sequential Indexed-Sequential Telecommunications Direct Graphics Read/write Get/Put Read/write (partitioned) Read/write Get/Put Read/write Read/write Get/Put Basic 005/360 SAM SAM none ISAM· 15AM DAM BTAM QTAM none VS/360 BSAM Q5AM BPA.'vt BISAM QISAM BDAM BTAM QTAM GAM BSAM* ....... .., Format F - unblockt!d DOS Format F - blocked 0 DOS Format V - unblocked DOS Format V - blocked DOS Format U 005 QSMl BPAM* BISA..'-'t QISAM BDAM* OS DOS OS OS DOS OS DOS OS DOS OS OS DOS OS OS DOS OS DOS OS DOS OS OS DOS OS OS OS OS OS OS DOS OS OS OS OS OS OS OOS OS OS DOS OS • Deblocking and blocking of lo~ical records must be done by problem program.; Ij ~--------------------------------------------------------Prtme&aar~ ~ I Cylinder 1 I I I I t I I I 1 50 I • I I I I 1125 1 I I 1175 1 1200 ..I I I I I I 1100 I Average seek. 100 cylinders i:llample 2: 05/360 spUt &ta area 08/360 ODly o ....- - - - - - - - - P r t m e data area I . I I 1--------~'"1 J j ....- - - - - - - - - - - - - - Pnme data area 2 & I I I I I I , I Cylinder I I 150 Average seek,. 50 cyl. Average seek. 50 cyl. --------..-.f ., I I 175 200 -I I l ISj ll&&tt:&ILf.JI,A&,;,'""" ,,,', ,.¥,... ,. P¥', 1 'I '."1 '~J o A Batch Processing FORTRAN System for a Minimal Configuration IBM 1620 This paper describes a software package designed to increase throughput on a 20K card system IBM 1620 computer in an environment where a large number of fairly simple FORTRAN programs must be processed. The increase in throughput is accomplished in two ways; (1) programs are batch executed under control of a loader-monitor routine, and (2) a powerfUl precompiler reduces the number of execution errors and decreases the requirement for on-line debugging. The compiler is a version of the PDQ FORTRAN compiler which has been modified to handle the batch processing features of the system. Batch execution is made possible by keeping the entire subroutine library resident in core rather than reloading it with each object deck. Object programs, separated by control cards, are stacked for input. The reading of a control card by the FORTRAN card read subroutine or the execution of a CALL EXIT statement will cause the next object deck to be automatically loaded and executed. The monitor will also terminate a job if the output line count exceeds a control card specification. o The precompiler detects more than seventy distinct errors based on PDQ FORTRAN specifications. Many of these errors, such as undefined symbols, are undetected by the compiler and cause execution checkstops. Recognition of multiple errors in a single statement is possible, thus eliminating multiple debugging passes. o ~, /5Z. - - - - - -.. --.-.-~~---- .. -- '±'HHtWttltt .... i.;,: 'ii±yttii»riril'·'·r ......... t",.. ....,--- .,.- 'Tiri··· rrrr .. , M . WIt L I AM G. LAN E CHICO STATE COLLEGE . dHICO, CAL IFORN IA DEAR MR. LANE, PLEASE EXCUSE THE USE Of THIS TYPING FOR A LETTER, BUT I CAN PUNCH CARDS FASTER AND MORE ACCURATELY THAN I CAN TYPE. ALSO, I UO NOT HAVE A SECRETARY AT THE PRESENT TIME. MY MAIN PURPOSE IN WRITING TO YOU IS TO ASK IF THERE IS A SLOT I NTH E 'C 0 MM0 N' ME E TIN G fOR T ~J() PAP E R S, 0 N E 0 F WH I CHI j'''l E t\J T ION E j) TO YOU IN SEPT. THESE ARE THE SAME TWO PAPERS I GAVE II\] SEPT., BUT I THINK THERE ~JILL BE ENOUGH PEOP'_E \~HO::;()ULD NOT COlvlr: TO THE MEETING IN SEPT. TO BE WORTHWHILE FOR ANOTHER PRESENTATION. I HAVE TWO PAPERS, UNE SPECIFICALLY FOR THE 1620, AND ANOTHeR OF A M0 REG ENE R A L NAT LJ i{ E. THE PAP E R S S H[) UL D f\j (J T 1\1 E ED M 0 RET HA1\1 AB (J U T 10 - 15 MINUTES. THE ABSTRACTS ARE u 1) 'A LARGE 1620 DISK UPERATING SYSTEM, REASONABLY 7094 COMPATIBLE.' 60~ 1620 HAS BEEN OEVELOPED AT PRINCETON FOR USE AS A DEBUGGING AID FOR THE 7094 AND SOME 360/0S PROGRAiVIS. FN II liD ANI) FN IV liD ARe INCLUDED AS WELL AS PRIVATE STORAGE OF PROGRAI'-1S. ,'v1AI\lY C(}I\ITROL CARl) OPTIOI\lS EXIST. S PEE DCA N B E 2 TO 4 TIM ES FA S T E R T H A,,' r-H1 1\1- I (I F LJ NE HAS H ARI) \~ ARE FLT • PT.) I3DTH 11\1 CO[vlPILATIOf\i Af\lD EXEClJTIOj\j. A USERS MANUAL ODES EXIST. fv1ANY STUDENTS ARE PRESENTLY USII\!G THE SYSTEfvl ON A COMPLETELY OPEN-SHOP RASIS. A NEW IvtONITOR FOR A 40K DR. 2) , BAS I C P RO B L E iVl SUr THE 1620.' I i\) F (J R f"l ATIn j\1 RET R I E V A'- Ai\1 D A SOL UTI 01\1 Ui\] SOME OF THE BASIC PROBLEMS OF INFORMATION ~ET~IEVAL AND IMP L EM E NT AT I ON ARE DIS C US S E f) • T HE T EC H[\1 I (,) U E S fJ F F I L E~ 0 RGAi\I I llx T I 0 I\l ARE DISCUSSED. THESE TECHi\JIOlJES /~f~E nISCUSSEO fOR THE I'~OST :OIVlfv10N FILE DEVICES (DISK AND TAPE). A SOLlJTlni\1 IS SHUI.-)f\l FOR THi: 1 62 0 WIT H DIS K TOO EIvttJ 1\) S T RAT E DIS K l JTIL I T Y• I AM SORRY ABUUT THE LATENESS OF THIS, BUT I HAVE BEEN OUT OF TOWN FOR SOME TIME AND CAN ONLY GET RAC< FOR WEEK-ENDS Ar THIS TIME. I HOPE TO SEE YOU IN S.F. VERY TRULY YUURS, o oo~ @~ un lS;] NOV 11967 C.S.C. COMPUTER CENTER ~~ C () [IIi PUT I I\l G GRU UP GUGGEI\JHE If'; LABS PRIN·::;ETON, i\).J. 08540 ,, o 1800/1896 COMMUNICATIONS ADAPTER PROGRAMIvlING SUPPORT Presented at COl\Il\ION, December 11, 1967 San Francisco, California by Robert L. Smith Systems Engineer IBM Corporation 1602 West Third Avenue Flint, Michigan 48504 Phone:313-235-6631 o /51/, tfh""j"",f iit#5riF· .. ··-PT..T····:--za ""r--W"¥"WW- o _n TABLE OF CONTENTS Section I II III IV V VI VII o Title Introduction 1 Terminal Descriptions 3 Hardware Interface 6 General Description of System 7 Line Operation Requests 10 Data Table Layout 20 Skeleton Core Requirements 21 DIAGRAMS Diag!,am Title 1. 1070 System 2. 1070 Data Flow 3. 1050 System and Data Flow 4. 2740 System and Data Flow 5. Data Table Layout 6. CA Hardware Interface 7. Programming System Data Flow o i 1 as:az:all'iiiilii"ildNtiiibiiUiiiQilii\ihiiffi..J·.dWM"<:r:,i,,,(J·~"l,·WLU-:'I1' '-""'TtL-"",:jo, \.,F,~,,", '"' ,.";;Z;S:f¥?,, .. ';·1 I. I NTRODUCT ION This paper describes the program written to p~ovide programming o support for the 1896 Communication Adapter used to attach start/stop terminals such as the IBM 1070,1050, 1030, and System/360 via 2701, 2702, or 2703 Communication Adapters to the 1800 control system. The initial 1896 support was written as a joint effort between the Flint, Michigan branch office and the Chicago North branch office to support 1800/1070 systems. The project was started in February of 1966 and we were able to run 1070's, though somewhat erratically, by November of that year. An 1800/1070 Type III package running under TSX II was submitted a few weeks ago to PID. The authors are Norm Rawson and Chuck Reiling of the chicago office, and myself of the Flint office. Implementation has taken roughly five man-years of time, and five years off each of our lives. You are recommended to the paper being presented by Charles Jonas of The Dow Chemical Company to hear the other side of the story, the user's. The original commitment to the customer specified that the 1896 Support would be accessed via FORTRAN and run under the 1800 Time Shared Exceutive (TSX), with little or no loss of the capabilities of either the 1800 or TSX. We also required ourselves to consider the following three points: 1. The 1800 Control System is at least three magnitudes of speed faster than the terminals, implying that we not hold the 1800 to wait for a communication function to be performed. This requirement was reinforced by point 2 below. 1 -------~----- /5~ o uawn, o 2. An 1800/1896/1070 System may be contro11in~ more than one process, including processes interfaced through the 1800 Process I/O features. 3. The resulting system mu~t not use more than 3000 words of memory (Skeleton resident). To fulfill these requirements, the system was designed to meet the following specifications: A. All user programming may be done in FORTRAN. B. All requests for communication functions will be placed in a priority queue. C. Upon completion of a requested function, a user specified flag will be set and, if the option is included, a mainline () core10ad may be placed on the TSX coreload queue (priority and core10ad specified for each function requested). D. Printer output may be done via FORTRAN WRITE statements. £. The support should take less than 3,000 words of memory (i,e" F. run on a 16K 1800). Multiple terminals per communication line, and multiple lines per 1800 will be supported. G. TSX will be altered the minimum amount possible so that TSX maintenance by FED will not be sacrificed more than necessary. o 2 /5r; IIGUlIiGilIG.L:;;:"bl'lI1,l/flIui..i£'~","n""';.I:'...."·,,ihJ.L'Ulii1i#ffi" .r..cf\if?!?i¥M/" """,1.,1",,, f+. " The above specifications have been met. (JD The use of the FORTRAN WRITE statement for 1053 output required the modification of either FORTRAN I/O or Skeleton I/O; we chose what we felt was the lesser of two evils, and modified TYPEN in Skeleton I/O. II. TERMINAL DESCRIPTIONS The following brief descriptions of the various Start/Stop Terminals available are meant to present the operating differences, and the capability of each pertinent to the discussion that follows. For more detailed information, please see the appro- priate reference manual. IBM 1070 Process Communication System (Form No. A26-5989) o The IBM 1070 system is a tele-processing system designed to monitor, supervise, and control widely spread process areas. Two-way transmission between a remote 1070 System and a central station is over standard voice or sub-voice grade communication lines. A 1070 System consists of a 1071 Terminal Control Unit, 1 or more 1072 Terminal Multiplexors, plus options to allow analog input, digital input, digital output, pulse counters, pulse output, 1053 Printers, manual entry stations, ahd display units. Transmission speed is selectable from 134.5, 600, or 1200 baud. See Diagram 1 for a schematic. Diagram 2 gives some examples of character exchanges necessary to perform certain functions. Analog Input is received as a series of o three digits for each point scanned, representing a count between 0 and 7999 proportional to the signal attached. 3 IS%' The 1070 Process Communication System will recognize 5 (); function codes: o- Conditional take from address 0 5 - Unconditional take from address 0 6 - Conditional take from present address 7 - Unconditional take from present address 9 - Send In addition, the 1070 can be set to random or sequential operating modes, and, on send, the printer output channel may be selected. Terminal Addressing is a sequence of 3 characters transmitted from the 1800 that specifies the terminal and function wanted. o The three characters and their use are: 1. EO T - 2.' A ©- Calls to a t ten t ion all term ina 1 son t hat 1 i ne . The address (one alpha character) of the terminal that is wanted. 3. N The function (one BCD digit) that is requested. The 1070 Character Coding consists of bits BA842l. The 1071 Terminal Control Unit contains a 3-Digit Multiplexor Address Register. Random or sequential operating mode is selected by the presence or absence of the B-Bit in the Printe~ o hundre~s digit. Output Channel is selected by a B-Bit present in the unit's digit of this register. 4 This register may be set by /59· - --------,,-,,-••.. "~-~-- --"- --.. --.----------.-------"---,=---.--- .-.------------------ -~- ash 0 r t SEN D, i. e . , © A 9 .. @A M1M2M3@' . wher e' a positive response from the 1070. M2 It • • " ·.;.~.,.c.:;;.;"".;" •.•." .. ,,~ _ _ _ _ _ _ _ ._._.__.~~_ rep res e nt s 0 Ml is the hundreds digit, the tens digit, and M3 the units digit that are placed in the 1071 Multiplexor Address Register. The B-Bits are placed in the correct digit by the program before this message is transmitted. 1050 Data Communication System (Form No. A24-3474) The 1050 system is a tele-processing system designed to send and receive data in the form of cards, paper tape or manually. A system will contain a 1051 Control unit, plus any or all of the following units: Card Reader, Card Punch, Paper Tape Reader, Paper Tape Punch, Programmed Numerical Keyboard, Selectric Printers, and an Alphanumeric Keyboard. Diagram 3 shows a typical configuration o and data exchanges with a central computer. The 1050 receives and transmits on standard voice or sub-voice grade communication lines at a rate of 134.5 baud. Addressing the terminal is done by a two character sequence consisting of a terminal address character and a device selection code. The device selection code also specifies whether data is to be sent or received. Multiple blocks of data may be sent or received without relinquishing control of the communication line. o 5 --~ - - - - - - - ------ /~() 2740 Communications ~erminal (Fqrm No. A24-3403) The IBM 2740 Terminal is a tele-processing Selectric typewriter. As such it has the capability of sending data inserted via-the standard typewriter keyboard, or receiving data as a printer. The 2740 communicates with a central processor via standard voice or sub-voice grade communication lines. Diagram 4 illustrates the character exchanges necessary to communicate with a 2740. It is highly recommended that 2740 model 2 s, with the buffer attachment 1 be utilized for most efficient operation. 2740lS normally operate at 134.5 baud, but with the buffer attachment, 600 baud rates can be used. Note that all three terminals use a slightly different adressing o scheme and that all three utilize fill characters (@) to allow time for mechanical movements on carriage returns, tabulates, and warm up periods. On the 1070, filler characters are used on the 600 baud model to present output characters to the printers at a rate less than 14.8 characters per scond . .I I I • HARDvJARE INTERFACE The 1896 Communications Adapter interfaces to the 1800 via Process Interrupt - Voltage, and Electronic Contact Operate. Each separate communication line attached requires a full group of each. Diagram 5 for a schematic of the interface. The programming system assumes interrupt assignments to level O. o See The reasoning here is that with the exception of the 1816 Keyboard, this is the only device that has the possibility of data over'run without hardware failure. /Go/ 6 ;;WIIULi!I!IaiIiI;;;:;;:;m;;;ru;t",a;.L·.II\\'1D";;;a=,:;"6J:m'ft''''-1naLM1,,:;:;;;;n,,.,~.,"·;:;;";;;;4",;,,,, ,.-,., .""., .. ,4\ "1"" ,," Each group of process interrupt is wired into one bit of the level 0 Interrupt Level Status proceeding through bit 15. is established for each Word~ beginning with bit 0 and In this manner an inherent priority line. However, once the servicing of a line has begun, it will proceed through to the BOSC instruction before any other lines are recognized. This takes somewhere around 750 usec. on a 4 usec. CPU. Except for the fact that the level 0 exit from MIC has been modified, there is no other good reason to restrict level zero to just the communications adapter, although not too many people will accept responsibility if that restriction is not honored. IV. o GENERAL DESCRIPTION OF SYSTEM The system may be divided into four logical areas: 1. Subroutine LINOP 2. CAISS -- A subroutine containing a. Supervisory Routines b. ISS - Interrupt Servicing Subroutines 3. 1053 Support 4. CATST ~ The error coreload. Each of these areas is described briefly below. Subroutine LINOP This subroutine, callable from FORTRAN, is the user's means of requesting a communication line operation. The user has a choice of having an indicator set for him at the completion of 7 o .. Pif9& m n. T .-iff"ife) -'jjt¥¥5h¥5!¥6ifW6i'¥ffffiC'¥ 'j""ffPWU53"%Bf5UTlrr the requested function (LINOP), or he may-have the system C~,'I ,,' execute a CALL QUEUE (LINWQ), placing a designated mainline coreload on the TSX queue in addition to setting the indicator. LINOP, which is used here to designate both calls, contains a line-operation-request queue which the Supervisor may interrogate, plus the necessary queue maintenance routines. CAISS Subroutine This subroutine is defined as an ISS Subroutine, allowing the definition of a separate entry point for each ILSW bit used, plus a CALL or LIBF entry point. The ILSW bit entry points are entries to the ISS portion of CAISS. The CALL entry point is defined at Skeleton Build as the servicing subroutine for a Program 4() Setable Interrupt that is assigned to the Supervisor portion of CAISS. Brief description of the Supervisor and ISS portions of CAISS follow: Supervisor The Supervisor is not a separate program or subroutine as in"LINOP, but is a set of routines, contained within the CAISS package, to provide services to the Interrupt Servicing ,Subroutine (ISS). The Supervisor is entered by a CALL LEVEL, said level being below that of the ISS itself. This allows the Supervisor to perform its tasks without interferring with the servicing of 1896 CA interrupts. The Supervisor builds o 8 /~3 -".. ... ~" =._---=._.- _._._ .. -..--.-.... -... --~.--.=.--'-."-=" '~'-"'-=-'-"=--"-='---'''---''- -----=~ line operations for CAISS from the user's queue does data·table chaining~ entry~ o halts typing on 1070's to allow scanning, removes completed line-operution requests from the queue, saves error information for the error coreload, and in general acts as an assistant to CAISS and an intermediary between the user and CAISS. ISS These routines service the interrupts of the 1896 Communication Adapter~ sending and re~eiving data to and from the terminals. To TSX it appears as a special I/O Subroutine. 1 0. 5 3 S.!:U?J?..Q.r,t.. The 1053 Support consists of modification to TYPEN in TSX, so we may inte~cept non~existent () typewriter messages just prior to their output to 1053's attached to the 1800. These messages are placed on the disc, since the non-existent 1053's are defined as .' always being busy_ When a "1 i n e i s f r e e and h a $ n0 que ue e nt r i e s wa i tin g, CAISS i n-i t i ate s a special TYPEN fu~ction to recall these messages from disk. These messages are then converted to BCD code, fill character (T) counts are inserted, and a CALL LINOP is performed,_ The 1896 Support System thereafter handles this entry as any other. o , 9 o An additional feature called Type··Stop was put i.n to allow the 1070 users to halt the typing of a 1053 message, ···perform control functions and/or input scanning) then resume the typing where it was interrupted. CATST - The Error Core1oad Errors are handled in a rather elementary fashion to get around , core limitations. When an error is detected, the contents of the work area for that line are transferred to an error buffer, and the whole operation is retried. After a set number of retries, the operation is aborted and terminal is marked down. o queue entries for that terminal are attempted successful, the terminal is set back up. an~ Any other if any are The abortion S;9n2.1s for the ·queueing of the error coreload - priority and error parameter of 1. This coreload prints out a message on a designated unit, can dump the error buffer and other information on the list printer, keeps counters updated, and tests terminals that are marked down by the simple method of addressing them. terminril answers, it gets put back up on line. If the The error coreload is also queued up periodically by CAISS for counter update and te rm ina 1 t est s . o " 10 jf£;·S Design Consideration The -structure of the support is the resul t of trying to satisfy the considerations mentioned above in Section I~ 0 plus a few factors which were not known at the initial specification. These factors were: a. The specific hardware design of the 1896 Communication Adapter and its interface to the 1800. b. The need to service at least six 1200 baud lines. This speed means there is only 7.5 milliseconds between characters on a line and 1/6th of that allows us only 1.25 m/sec. per line for a maximum service time on the CA interrupt level before we start to lose data. On a 4 microsecond 1800, this is approximately 65 instructions, using San Jose's estimate of 20 usec/instruction. For this reason, a high percentage (90+) of the coding is in one-word, indexed instructions, o which run approximately 10 usec/instruction, allowing us about 120 instructions (which merited a minor sigh of relief). Because of this time limitation, we have, wherever possible, delegated jobs to the Supervisor, letting the 1896 - CA idle if necessary. IV. LINE OPERATION REQUESTS ,Functions: ... All line operations are initiated from CALL statements to a skeleton resident line operation routine. functions will be provided~ The following line o 11 2fi"[fPPi .- 1070 Function Codes: o- Conditional TAKE from zero multiplexer address 5 - Unconditional TAKE from zero multiplexer address 6 .. Conditional TAKE from user specified multiplexer address 7 ~ Unconditional TAKE from user specified multiplexer address 9 - SEND to user specified multiplexer address 11 - SEND to 1053 Printer A terminal multiplexer may be set to either random or sequential operating mode, and the 1053 Printer Output Channel may be selected on a direct send (specify cuntion Code 11). 1050 Functions (Device Selection ~odes) Polling (Take from 1050) Sendin~o 0 - Any input component 1 - Printer 5 - Key bo a rd 6 ~ Reader 1 7 the 1050 2 - Pri nter 2· ·3 - Punch 4 Reader 2 Punch 2 9 - Any or all output components that are in a steady status 2740 Function Codes Being a relatively simple device, the 2740 functions are relatively simple. 4C). A.function of 0 (zero) requests'data from the 2740 keyboard, its only input device, while any non-zero value will send data to the 2740 printer. Period. 12 . . .. p _..¥4.¥, /67 Call Statements: Three line operation subroutines are provided: a. o LINOP (line operation) which maintains an indicator for the line operation status. I, b. LINWQ (line operation with queue) which queues a mainline coreload when the line operation is I· complete and maintains the operation status I I indicator. c. TYPSP (type stop) which interrupts an 1896 message of priority 255 in favor of a more important operation on that line, and then somples the message when the line is again available. Subroutine LINOP is called either by one of the following call sequences 1. FORTRAN: 2. ASSEMBLER: CALL LINOP (LF, LP, LL, LT, NDATA, IND) CALL LINOP DC LF DC LP DC LL DC LT DC NDATA DC IND Note: FORTRAN ARGUMENTS LF, LP, LL, LT, LTSXQ. may be integer constant or variables, other arguments are integer variables. The assemb}er constants are the addresses of the arguments. o 13 ....... - .. ~-- ........ ~--- /(''P o Subroutine LINWQ is called by either of the following call sequences: 1. FORTRAN: CALL LINWQ (LF, LP, LL, LT, LDATA, "IND, LTSXQ, QUE UE, CLON r~ ) NOTE: Program names QUEUE and 'CLDNM' must appear in an EXTERNAL statement in the calling progam. 2. ASS EMBL ER": o CALL LINWQ DC LF DC LP DC LL DC LT DC NDATA DC IND DC LTSXQ CALL QUEUE CALL CLDNM Subroutine TYPSP is called by either of the following call sequences: 1. FORTRAN CALL TYPSP (lL) 2.' ASSEMBLER: CALL TYPSP DC LL Address of the line number Definition of parameters for LINOP, LINWQ, and TYPSP: a. o LF - Function code, 0 - F16 (0 - 15 10 ) stored as a one-~ord integer, only the low order of 4 bits are used. 14 b. LP - Priority to be assigned to this line operation by the 1896 Line Control Supervisor. word integer, between 0 and 254. o LP is a one- LINOP uses the 8 low order bits as a positive number: Zero (0) is considered the highest priority and 254 the lowest. FORTRAT 'WRITE' statements to a 1053 are automatically given priority 255. c. LL - Line number, a one-word integer between 0 and 15, only the low order 4 bits are used. This number references the Communication Adapter (CA) attached to that ILSW bit specified by LL. The 1800 Interrupt handling technique implies an order or priority with ILSW bit being the highest if two or more interrupts are simultaneous on the same level. d. LT - Terminal on the specified line. 1 to 16 with o LT can range from LINOP or LINWQ converting to the alpha addressing character A-P. Terminals on a line are required to be assigned starting with A and proceeding consecutively. Neither LL nor LT may reference a . higher numbered line or terminal than has been assigned at system generation time or a LINOP error will result. e. NDATA - This is the low core (FORTRAN high subscript) address of user's data table. Data table format is explained below. 15 I?O f. IND - is an integer indicator which will be set at various stages of the line operation. The value IND is set to depend on the status of the line operation. IND 1 Line queue was full, unable to enter request IND 2 Request entered in line queue successfully IND 3 Line operation complete with no errors (CLDNM has been queued) IND 4 CALL paramenter in error, request not entered IND 5 Repeated line operation failure, request cancelled (CLDNM has been queued) IND = 6 - Line or terminal down (inoperative), request cane., The user may elect to have the real-time clock returned with the operation complete (3 or 5) indicator. In this option, user must dimension the indicator as two adjacent words (as DATA IND, IND2/0,O/). o Indicator value will be returned in IND and clock in IND2, the next lower core address. g. Format of CALL LINOP is not changed. LTSXQ - This integer is the priority used if the user wishes the 1896 Line Control Supervisor to issue a CALL QUEUE at the completion of the line operation. may have any value from 1 to 32767. LTSXQ It cannot be zero. h. QUEUE - A dUlmny parameter which indicates the following argument is a coreload name. i. CLDNM - is the name of a core load to be used by CAISS in a CALL QUEUE (CLDNM, LTSXQ,X). (X is assigned by the user at system generation and determines if the lowest priority entry is replaced or the queuing is o ignored when a queue overflow occurs.) Note that the coreload is queued on an' unsuccessful line operation 16 171 (IND indicator of 5), as well as on a successful operation (IND indicator at 3). The type stop call is provided for rapid recognition of interrupts. It will suspend typing in favor of more important operations on a line. CALL TYPSP will stop typing at completion of the current character and will allow the line queue to be scanned for other line requests. When no more entries remain in the line queue, typing will be continued at the point of its interruption. This call should be issued from any interrupt servicing subroutine that requires line access in less time than the maximum typing requirement. For example, a 600 baud line will require in excess of ten seconds to complete an 130 character message. o TYPEWRITER OUTPUT The 1800/1896 Process Communication and Control System provides two methods. of typewriter output to the 1053: 1. Normal FORTRAN 'WRITE' operations with a 'FORMAT' statement. 2. Direct line operations CALLED by the user. FORTRAN 'WRITE' STATEMENTS: The TASK program of TSX has been modified to handle output to 1053 typewriters on the 1896 system from the normal FORTRAN I/O subroutines. Typewriters are assigned logical unit numbers for FORTRAN when the TSX system is built by the user, and the user initiates a message with the 'WRITE' and 'FORMAT' statements. In TSX, all FORTRA~ typewriter messages or message units are buffered to disk, occupying one sector per message unit. 17 (); Control is returned to J?Z- !II!!!tY". the user program immediately after buffering. o Buffered 1053 messages are recalled by the RECAL subprogiam whenever their 1896 line is idle; therefore, typewriter messages have the lowest priority of all line operations, (priority 225). The length of time between 'WRITE' statement and message typing is dependent upon the number of requests for that line which are in the linequeue. Messages are recalled from the buffer on a first-in, first- out basis; alert messages will be recalled before normal messages. In TSX, alert messages are recognized by tne first character in the 'FORMAT' stai(~ment being a "Ribbon Shift Up". If a typewriter, or its line, is down, a backup typewriter specified by the user can be used. Error conditions such as disk buffer overflow are handled by a modified TYPEN program of TSX. o A maximum of 16 typewriters, one of which must be an 1800/1053 typewriter, may be supported by the 1800/1896 modified TSX system. Because both 'Printer Start' and 'Carriage Return-Line Feed' operations are very time consuming, the user may tal-;e the option to permanently wire 'ON' his 1053 typewriters and to have the FORTRAN generated CRLF at the beginning of each typewriter message, automatically deleted upon recall. With this option, message units may not be used, and it is the user's responsibility to place CRLF where needed. If the option is not taken at system generation time, a printer start character is automatically placed before the message unit or CRLF of the message when the message is recalled from disk buffer. o 18 /73 ... ' - - '-----.-.•..----..-.... ---~ -.-----.~.-~.- -..... ............. ... ......... .. .. " " " " ~~-~-- I :1 0',,: An emergency 1053 message may be sent with priority over other I operations on that 1896 line by using CALL LINOP or LINWQ and a data table containing the message. Function code is an 11 in the user's CALL, conversion code is 4, and random mode bit (10M in data tabl~must l~ft 8 bits and filler count in right 8 bits of each data word. be on. Data format is valid 1070 character in SEQUENCE OF OPERATIONS The following sequence of operations is initiated by the user with CALL LINOP or LIN\'{Q: 1. User CALL from normal or interrupt program. 2. a. Request processing by LINOP on same level set user indicator. b. Enter request in line-queue. c. Set programmed interrupt for CAISS supervisor. a. Recognition of programmed interrupt. b. Search line-queue for highest priority request. c. Build line~operation tables for terminal and multiplexer addressing. d. Trigger first interrupt from Conununications Adapter. a. Level 0 interrupt for CAISS b. Device addressing. c. Data transmit and receive. d. Longitudinal redundancy check. e. Clear line and set progralruned interrupt for CAISS supervisor. a. Recognition of progranmwd interrupt. 3. 4. 5. 19 ~s user, 17Y 6. !?~TA b. Set line not busy, set user indicator. c. Call diagnostic coreload if error has occurred. User program recognizes operation complete code in user indicator. TABLES (Diagram 5) The data tables required by the 1896 system are modeled after the normal 1800/1130 data tables. The address transmitted in the call sequence points to the low core end of the table, requiring in FORTRAM the high subscripted end. The first word in the data table is a word count specifying the number of words of data or the number of characters to be transmitted or received, depending on the conversion code. o The high order bit is the chain indicator bit if this option is included. If the chaining option is not included, this bits presence will be ignored. The system uses the low order 14 bits as a positive integer. The second word specifies the conversion code in the high order - 4 bits, and for 1070 systems, the multiplexor address and mode in the low order 12 bits. o - The conversion codes available are: Unpacked, one character per word. 1 - Packed Digital, two characters per word. 2 - Unpacked Digital, one character per word. 3 - Analog Input (1070 only)--the converted binary value of one analog input point is stored in each word. C·"·' 4 - 1053 output, the character to be printed is in the high order 8 bits, the number of filler characters to follow is in the low order 8 bits. .,.' 5 - Packed, two characters per word. 20 u· ++WiliIliiUiiii......iiiliMMiGialGII,iI1Gi1&QiQa;;:;;;g,£l1I,:gg;:, .... _-__ c_. ____ • _ _ _ • _ _ _ _ _ •.•••• _ _ _ . • • _ _ __ i I The difference in digital or normal conversion is the handling of the BCD zero, consisting of the 82 bits, which is converted to a binary a o in Digital conversion, but left as'a binary A (1010) in normal mode; plus that Digital conversion concerns itself with only the four low order bits and ignores any higher order bits. The Chain Address word must be present and set correctly if chaining of data table is used. The contents of this word is used with no checking as the address of the next data table. come of an incorrect setting here. Bad things could Note that in MPX, a load address function is provided to allow setting of this chain address that is remarkable simila~ to the one provided by the 1070 support package. SKELETON COnE REQUIRE11ENTS Approximate core requirements for the skeleton resident portions are given below. These core requirements are approximate and I will not be held responsible for them. -TASK modifications for Typewriter support via FORTRAN I/O: 620 Words. Subroutine LINOP/LINWQ plus the queue: The type stop subroutine TYPSP: 330 Words. 30 Words. CAISS Subroutine: 1200 Words plus 100 each for the chain on Send and Type-Stop Options plus 40 Words per line attached. The sum is about 2240 words for a reasonable system. 0, 21 17(' w,···j·· . _-jjf···. :·_jl· ..¥ no-b·· #¥t-_ ¥r---p&""5fW· Uu Momentcary An,aloq Contc3cts sign drS --:' '---,~-----------t V Q --------Q. .-4) o-(J&.----1 Process Contcact Alert sense ~~ --.~_ _~_ _ _ _ _ _ _ _ _ _~ Pulse input .. - KY. A~_ _ _ _ _ _ _ _~ -4 Pul;"e ~utput JJ14 to li-IO-73---2--1 DIC Counter termindl I 1073-3 ~ r ~~ DigitClI pulse con vert(;~r cus'J-omer 1h~ devices ·''-0 .J ~ ~ ~ 1078 Pulse counter 1072 Termin,;d -- 1073-1 Leltching C.O. Multiplexor ~ /077 MC1nucJ! entryDecImal ~ r,--- ' - - -_ _~r--r-'t-- 1074 BinCJr y Displ,ay .:::l-- 1075 Decimdl DiSple1Y <:!-- I) ~ i ~ 0 i I 1076 u Mcanucal entryBinary - I io-. more 1072's - ,. 1053 Printer 1071 Terminc31 Control Unit fmc if tcrr.,inol d~tec:ts AddrCH dIed:, Vi:C or lRC error dvrin:) first messo:;e. © 1070 addre:;s reller Q 7 used f~ begin input 7 (M lM]M3 set aLove) unconditio:lOlly. 1070 Address @ If oddre:;; register is H;t on output ©O cC=:::J ~ 01 current multiplexcr cddre;s if Pro::t.s Alert indico~or ® @ } X T S End of block End or tro:w.Jclion © c:J [)o:o (rom odJrcs~ tS') 1070 Add:e.s @ LRC Or'! Process elert indicok·r is on T E D ••• lRC. -- . .,. . . ~ S 0 po@ or non-ovoilable p-:>inl, ther> rc;ponse is scnt imleod "f T E X T' ® End of hamadi,,, 6 0:1 ® R , ~ ~ .~ 1070 J..ddrcss 0- Stort seen cf e::i(!'c;s C2) if Process Ale:t ;ndicc:c~ Q LRC scon. of current O-:1dii~SS OF 1070 M'i M3 End of block COEDITIOl{!~L POLLlt~G End of block C Ie:t ...... I lRC _.-.. -..----q._-D-IA-G-.R--A-A-4--2-:-/C-)?-~O-D;.&.-~-T-P\-F-L-O---~~----·_m77f.=--· . ----.--------~-.-- READER I C~\' . - - - - " " ' (...!'~---, INPUT 105r Control Unit OUTPUT () POLLING 1800 SEOUENC~ © A7 CA7 \ I \1 \1 \ SENDING (0 '\ '\ I \ \ @ (D<;dd)®L~ 1050@ (0 I \ I \ I I SEQUENCE New 'Address Address Printer I II @) (Oc3tc1)@ CAl I \ \ 1050 I @(D<1,t<1)®\/_---=-@=-'_ __ Terminal 1800 \ I \ @B 7 •..:...:. I \ I (0 L L © ~_@{Dd1;a)~Rc \ \ \ ,I I I C0 L RC Ol( I \ \ I \ 0 I I I © C9 I \ I \ \ I ® Terminal Not ready -orParity ch eck in dddress. DIAGRAM 3: /050 SYSTElvt 171 .- PRINTER ~ tdtion KEYBOARD contro~~ Checking ,feeltures CONTROL required. . fBuffer 0111 LModel 2 J POLLING 1800 \ \ I \ \ \ \ I I ® 2740 I L / I \ \ I I \ / D.atca ®~_~©~ Not Recady EOB Key ____ EOT Key SENDING7 1800@@ab@Text®\ Text ®\_---=©~C_._.._ _ _ __ \ \ 2740 I I \ \ I \ I \ I Y Y I \ I \ \ I I 0 DIAG,RAM 4: 2740- SYSTElvt /fo. DATA TABLE LAYOUT FOR /800//896 SUPPORT CAISS o I 2· ---------------/5 DC/tea caddress in LINOP CALL rc fer s to this .address 10\,., core 5 4 ---/5 ~--------~--~--~----- Conversion Ran 0 Code scan HeClder Word I 1\;1u/-riple)(or Address (bincar ) CONVERSION CODES ddjr.~------------~ Hedder Word 2 O. Unpacked} one chc3r/word Next Fir 51'" Da"fa Word * Packed) two digits/word 2 _ Unpacked) one digi,,/word 3. Anc3log input one MP)( I. .Roin t/'Word 4.1053 output) one chClr/word 5. Pdcke~ two chClr/word ~-t-A character is jl-he 6-bi-t Be D chdrac-l-er used by -I-he 1070 Termil1.a/s. high L Clst D~tC1 Word core Chd1in AddreSs 1 0 Cldclr: Next Table ~ Chdin c3ddress is] required if chain bi-J- is on. r Jl.Dp •..,lc/f..Cl.,rl 0-'-9/0-/2-/5 BCD- (x--xBA84·m Digi1"d/- J)( )( x 842/J ....Ea.c ked 0-2-4--78-'0~/2-/5 mAC42 I xxBA842]] I.»o( x8421 x x )( x8 427J 1053 Output - 0-2--78 --/5 o [XXi3A842/IFLCNiJ rNo. (j)'s J ~f1-e r char. rls DIAGRAM 5 IfI. .~ ." :~O Q (d N·· ~ DiT u.: ~ => J- <: Ui u.. 0 u L&J BIT BIT 011 BiT o -'- ~ . ~ ift;\t!SN! i 3 d RESET C A :.: :-~ =1- CC:.:~)lrr::~ R~CfHI!:; };nD~?1 READY ::~l MODE "~OT ,..P.EADY .........._), orr ,~ _L C.:-:-··,..,~:..,.. ........ u ":7;;" t.:;..'I. II. BIT 6 -~ K~ST~R CONTROL:::::.4 DiT 7 ~- SLi1V~ CC/:TROl. >! .~(~) ~ -J BiT BIT 6 ,-{' ; 5 BtT BiT ~~-.r "IT un ~ ~':rnIT t..._ -!<- GOOD DATA ReADY -~-::.::::- VRC/LRC ~::SSAGE '4 - '.~.__ - -"- T I ..... M~ ,., 0 UT I --'<- 10 -'<-DATA BIT B ~ IEIT 12 -'<-DATA I~ I Bi I 14 I. ~ ~ I 0 I. _ U!.IT 15 <- DATA -i'~ SET r~-Rr:C~IV£D C;"?'A ~ ~i"\ 2020.., OR CO!/"~~"II • ... V." IIT Y pcC 2 BI 1:<-RiNG INDICATOR~L I NE . CO·;l!'"l!~I'I.''''O~'~''' .... _.~ Io.Inl I I'~ I8 9~DA:~~~ L rDA'A I I I ADi\P t:1 JeRPQ C083 I) TERM.RDY-~l . -----J L} BII 2 DATA SIT 1 -------IJ F- COH.'\mN --------1 ~ <: ---. ltJ Q:: ;;f :5:> ~ ~ -C ~ . I [HT 8 ------..../! LL: C( \D I I ;« . i f I I03J DATA [ii'.At;SHIT DATA-> i I "1 S~7 i .... P.'[:A.DY:J--!MODEL 202Cr CC=·:?LETEJ IB'Tl1~-:::::;-DATABfTA B!~ 13 j<-OATA Bi! :J-' TO SG'M!) _..... I ... ,~ ' 4 -t<-7AANSMIT ReADY 5 v 7 .~ RI"'''' 1"-"'~,\·'l">.U;)T 8 VRC~ E~~~~;'h. , 9 -~<- DATA BIT C ~ I f F~SSAGE COX?LETE --I IB~T _ ~ 'EHT 0 1 2 ] _&\'::::-~CCEPJE "'- (::-Dr.'\TA. ~J. I ~.-----I~ 817 !.. I.c--C~ r.AQ '40 5;'7·'D·· ~ -..... ......... '4'. _.,. >.-! :;1 I'" ~R\~QH":'Si • ---J _ .....-' D~~.~ U I e ~ llJ ,• ~ ,1 DIT ;;,I BIT 10 D. ~1.~7A B~I 0 a-Dtt':A B!TA:::::~ BIT 11 ro .,. 12 - ' - C.",',,; D!T :'>1 ... l l ·-, _1._ r':' I~ It( - . ; ; > ~-~ ~ I D.I\i... ";:".", 0" ~ a BIT 1;; SIT 14 ;_ .. , BI! 2 BIT 15 ~.~~:~ ~Il I vU .... o.! ' - -_ _ _ _ _~.i Ii. ~ I I !} - : - ~ ·P. I. (v) BITS 8 THROUGH 15 DO NOT CAUSE AN INTERRUPT REQUEST IN THE 1800 SYSTEM. « a:: ~ ~ Q LINOP (USER) CALL o C/~/SS ZERO LINOP----_._~ FOR[]\~ QUEUE ENTRY [ CA LL LEVEL] INDICATOR SET TO 2 -----_-----oj .~ GETENTf1Y QUEUE READY t'VORl( AREA 1 interrupt CALL INTEX o HANDLE CHAR.INT.'S AS THEY OCCUR -~. VvHEN DONE, IDLE LINE. BOSC CLEAH INDICATOR (iET TO 3 VvORK AREA.; QUEUE. -.-------- /f3. *IWl&iIiiIiiiiiWiiiiiiliOiaiiOiiIiiiiiIWiIiiliM&ii!lild&tD!Gl:::&ItU&Q&\&&&IC!ibM:,rrl,,,:u:;;,,,,A....w4r.l,,....... ,"'j." ..;., , , 'n,," , ,. ,.. " 1"1., " " .. , '," I I," " $., I ,f¥4 , .. ·,4?f?+¥P+ ~-~-- .. -...•---...-................ ···r ABSTRACT FAST FOURIER TRANSFORM l'}ITP APPLICATIONS FOR THB 113M 1800 T11e Fast Fourier Transform technique as developed by Cooley ancl Tukey has had a widespread effect in the field of time series analysis. HOlvcver, some difficulty has been encountered by potential users in determining exactly !10\\T the technique works. An effort to explain the derivation in detail will be made. Also, a G.cscription will be given of an analysis package prog ram ill. 1;}li ell th;;: r as t Fou r ier TrllI1S form technique is used to yiel<.l amplitude/phase spectra, po\Vcr spectra, cross pOhcr spectra, anJ auto correla~ tions. o /Pf ;',,\, 0 ".," .'/ FAST FOURIER TRANSFORMS The algorith~for the computation of complex Fourier coeffi'cients, as introduced by Cooley and Tukeyl, has had a widespread ~fect in the area of time series analysis. IIowever, some difficulty has been encountered by potential users in determining exactly ho\" the technique works. We will derive a special case for transforming a sequence with two factors and attempt to generalize the case for r factors. INTRODUCTIOi\ It is advantageous to review briefly the classical Fourier transformation in orJer to fully appreciate the fast Fourier trans fo rm (F FT) . FUll r i cr I s theorem says tha t any time series XCt), which has a finite number of discontinuities and is periodic (i.e., X(t) XCt+T)), can he consiuered to be a linear superposition of sine anu cosine terms \",hose arguments are integral multiples of the fundamental frequency W0 = 21T / T . I\'la t h cma tic all y t his is to say X(t) = !a o + r n=l (uncos nw t + b sin nw t) 0 n 0 I ),.,'" (1) If we let cos t 0 = sin nw 0 t = llw 1 ( jnw e 0 2" t + e - j nw 0 t) and 1 ( j nUl t c a - e - j nw 0 t) ..,." L.J We lIlay rewrite (1) as 00 XCt) = Co + L 11=-00 c Jl ;j w t n (Z) 1 l/Z J"=r--r, w =nw have let c o =-a c =(a 2+b 2) 2 0' n n n' n o' Equation (2) is known ~5 the complex fourier series of Here fet). we Upon examining (2) it becomes evident that we can describe the sequence XCt) completely in terms of the c n and wn' TIlis is known as the frequency domain representation of the time series XCt). The transformation from the time domain to the frequency domain is Fourier's transform and is written, where T is the time length of the series X(T). (3) The function Few) is in general complex, and F(w) = R(w) + jI(w) = IF(w)\ e~ .~) .t. ~ c , o The NIMS monitor system was founded as a TASK offline system with certain protective features in the core-load builder modified to allow the use of interrupt service subroutines, the masking subroutines, and timer subroutines with non-proces s coreloads. Thus, becaus e TASK is the basic building block, the TASK support programs such as TRACE, CORE DUMP, DISK DUMP, etc., are available with this system. The core-load builder is constructed such that the special purpose operation codes associated with different type core-load builds are separated in their table by delimiting constants. For example) a process type operation code could not be used in anything but a process coreload. It was a very simple thing to change thos e delimiters such that the operation code tables for the process and interrupt coreload functions were included in the non-process operation code table. The final modification negated the test in the non-proces s supervisor for the type of coreload being executed. Figure 3 represents a table of the modifications necessary to provide the consolidation of process and non-process coreload functions. 4. TRACE DEVELOPMENT The TASK utility programs have been included as a subset of the NIMS monitor system. All utility programs were considered adequate for debug tools by the data reduction programmers with the exception that it was felt that the TRACE output was too difficult to interpret. o 020/5 ;;;;;;na;c;:;-==a:;:;;;;A&LilIll&=======au:J~m"£{"'.oil!"£.&tI1{,~-1kr.rL';G;;"':r.l&m~£.G,cJt.;,U"",IJn:::Kr; .,,;·A,.,; ."";;,,+fu%;,,4i§.,.,$,, , .,;..,;g; .". ,g" ~';;,." ." ., ..,." '0 "" """; """ - r" "n·; ,.Y\$, "" .. 9~-.-4tf.+hr;?f., ·,,-r· ¥ , '"\' )4\fiiflf,,¥4f¥.S¥A4 .. .. ,,,f4,@?2., GAT 47 1548 Table of 1\1odifications to Consolidate Process and ~~ oru~]roce$s functions 1. CLB - CORE LOAD BUILDER PROGRAM • MINOR MODIFICATION TO OPERATIOr\l CODE TABLE LIMITS 2. NPS - NONPROCESS SUPERVISOR PROGRAM • MINOR MODI FICA TION TO REMOVE TEST FOR PROCESS CORELOAD \\ \" fv ~ p ~ @ c {] , This problem lead to the development of ins erting additional coding in the TRACE routine in TASK to provide a mnemonic format conversion for generating the output for the 1443 printer. An example of output generated while running under the TRACE mode is shown in Figure 4. The prime features of this development are a much easier format to read and the calculation of the , effective addres s that the instruction operation code will be referencing. 5. SOURCE PROGRAM FILE STORAGE SYSTEM Significant effort was expended in providing a source program file storage capability in conjunction with the NIMS monitor system. This capability provides prograITlITlers the means for storing source language programs for subsequent retrieval during checkout c activities. The programs are stored on the file such that alter cards could be read through the card reader to modify the source program before the assembler performs its function. was accomplished in two pnases. This activity In the first, the systeITl COITlponents suCh as TASK, ASM, FTN, and DUP were ITlodified to accept input from ITlagnetic tape. In the second, a series of programs were written to generate a systeITls tape, provide an alter capability, and perform a periodic update of tile source program systeITls tape. The key to providing the systeITls routine with the capability of accepting input froITl magnetic tape involved including the coding of the MAGT routine in the TASK skeleton and providing a one word logical switCh in fixed core for interrogation by the input o 7 c203 47 1549 Trace Output LOC OPCO F 3eBF LOX L 38C1 2097 2094 BSC I 3880 STX LOX LOO 2 OF 1 LO 1 80 lE 00 38B1 3883 3884 ~ 2 80 EFFA MEMORY ACCU MO 0040 38AE 0040 1674 2097 70FC 0000 0000 0000 0040 0008 2083 NO 0000 0040 0040 2083 NO 4400 2097 0000 0000 0000 0040 0040 2083 NO 38AE 2094 38AE 00 L 0000 0040 0040 2083 NO 0000 0000 0040 0040 2083 NO 0000 0000 0000 0000 0040 0040 0000 2096 0040 0000 2096 0040 2083 NO 2083 NO 2083 NO BOOO 0000 2096 0040 2083 NO 2083 38AE 0000 3802 1170 7001 0000 F1F1 IX *1 IX*2 IX*3 CO OFLW AOOR FC MOX BST 00 NO NO NO NO NO NO NO NO 0008 145E 0008 0000 2096 0040 NO 38C3 38C3 0008 NO NO 0008 80 38C4 38EO 0000 0008 0000 2096 0040 2083 NO 0000 2096 0008 2083 NO NO NO L 20 3A8C 4C80 0000 I FF 80 02 3A8C 38AE 3A86 2096 3888 BOOO 7402 0000 0000 0000 2096 0008 2083 NO 0000 2096 0008 2083 NO 0000 2096 0008 2083 NO 38AE 38AE 2095 0000 0000 2096 0008 2083 NO NO NO NO NO RTE CC oc 3887 STO LOX 2 80 3889 aSI 2 3AS8 BSC MOX 38B5 3886 ~ CJ TAG OISP 3A8A 3A8C esc 38B8 MOX L 38BO LOX L 1 00 0040 1180 4480 0000 0000 2096 0008 2083 NO NO 38BF LOX L 2 00 0040 0040 1674 0000 0000 0040 0008 2083 NO NO 38C1 BSC I 80 38AE 2097 70FC 0000 0000 0040 0040 NO 2083 NO @ oo~ C) 0 segments of the systems routines. c··" in tne system to read tape drive ,I supervisor after reading a This switch forces the I/O routines a when set by tne non-process I / TAPE card from tne card reader. The switCh will be reset for the I/O routines to read from tne card reader if a / / CARD image is read off of magnetic tape. It was also necessary to modify each of the I/O routines in the assembler, FORTRAN compiler, disk utility program, and the non-process supervisor. Since CARDN is included in the NIMS- TASK, the coding of CARDN in eaCh of the systems routines was replaced with the coding necessary to test the card/magnetic tape switch and perforrn the magnetic tape input operations. Depending on the routine, it was necessary as part of the magnetic tape input function to convert the card image from tape either back to card image format, a special one character right justified EBCDIC, C\ or leave in standard two word EBCDIC. ,J Figure 5 is a pictorial r epres entation of the NIMS rnagnetic tape system showing hOw the support prograrns interface with the systerns programs to perforrn a complete job operation. The CDTST-Card to Source Program Systern Tape Prograrn is used to place the initial version of a source prograrn on tne systern tape. Tnis procedure involves searching the system tape for the last record, backspacing tne tape to prepare for the write operation, and writing the card irnages from the card reader in blocked tape forrnat of 200 cards per block. The terrnination card of the prograrn causes a new end-of-tape record to then be generated. o 9 r:2,OS 47 1550 r~~~JJS T~~J AS$®mb~y Pr@codur~ SOURCE ALTERED SYSTEM TAPE _PROGRA~,A IN TEMPORARY STORAGE TAPE NPS, DUP NPS, ALTER CDTST RELOCATABLE UNBLOCICED PROGRAM CLB ASM -' ALTER CARDS / / TA PE ~ -"'M";' CARD CONTROL. m.l8 CARDS @ ~ C) ~- I-' 0 C (j 0 The ALTER-Source Program System Tape Alter Program has the C~. · '·" ' , function of allowing the programmers the capability of altering source statements as it is unblocking the program from the source progra:rn system tape to a scratch tape in preparation for input into the assembler program. Figure 6 shows the three data card formats that can be used with the ALTER program. The alter function of the alter cards is determined by the character in column 72 as follows: R means replace the card i:rnage on the source program system tape having the corresponding sequence number in columns 77 -80 with this card image. I means insert this card image in front of the card image on tape with the same sequence nu:rnber in columns 77-80. o D means delete the card images on tape inclusively between the two sequence numbers in columns 73-80. If only one card image is to be deleted, the sequence number should be punched in colu:rnns 73-76. The output magnetic tape on drive 0 is generated in 80 character EBCDIC for:rnat for direct input into the ASM system assembler. This is triggered by a / / TAPE card following the last alter card in the card input stream. After the assembler has finiShed with the asse:rnbly process and stored the relocatable program in temporary storage on the disk, the next record is read from the tape input stream on drive O. This record is a / / CARD image transferring control back to the card reader. The program that has just been assembled can then be executed or permanently stored on the disk. o ~07 11 47 1551 Sampl@ Alter Card 21 XYD SW1 Fonn~ts 27 32 35 46 72 77 MDX L ABC, -4 DECREMENT ABC TABLE R 0051 LDD 1 TEMP R 0193 STD 2 TAPE-1 R 0194 I 0512 I 0719 I ·0720 N0P LIBF MAGT DC /5000 REWIND TAPE 00999 010041021 @ ~ ~ ~. o ~ NC {) , The third progralTI associated with the NIMS tape asselTIbly procedure is UPDAT -Source ProgralTI SystelTI Tape Periodic Update o ProgralTI. This program will utilize sublTIitted alter decks as input to generate an updated version of the source progralTI systelTI tape. The progralTIs that were modified by this run will be resequenced on the new source program systems tape. 6. SYSGcP - NIMS PROTECTION PROGRAM Early in the operation of the TSX system, a programmer inadvertently destroyed the system on the disk to a degree that it was necessary to do a new system generation from cards. It was decided at this point that the system disks would be copied on magnetic tape with a capability implemented to restore the disks from this tape. The SYSGcP program was written to provide the disk to tape operation, the punChing of a self-loading execution card, and the subsequent tape to disk regeneration process. The first step of the execution of the program involves storing the first 12 locations of core in a table for the regeneration phase of the program. A split-binary self loading card is then punched that is used to load the system skeleton and the SYSG

program that will copy the retnaining tape records on the systems disks. Figure 7 presents a schematic representation of the operation of this program. 7. MINOR SYSTEM DEVELOPMENTS Additional features have been added to the NIMS monitor systetn that extend the perfortnance of the system or provide a more simplified operating procedure. 111"", C~...) The standard ASM Assembler Program has been replaced by an IBM released MACRO Assembler Program called MASM. This has been found to be a powerful tool for the programmers providing extended programming capability. The NIMS-TASK program was modified to provide the programmers and operators with the ability to execute stored coreloads by typing in the program name on the typewriter. This activity is initiated by pressing the console interrupt button with no sense switches on. The typewriter will request that a 5 character program name be entered through the keyboard with the following message: TYPE IN FIVE CHARACTER PROGRAM NAME o c2/0 14 o o ~ 47 1552 .svs~f~ Slf~)'i@ril1 St@r~g~ ~~@GQd~r[! DIST TO TAPE PHASE -_.-SYSG0 ..., T APE LOAD CARD [ >!Ia!!ft . Dlsrc T REG~:t~ERATION AP~-L~·~~;]·. ~{. ~O/l..D CARD PHASE SYSTEM ~.i ~RO:'~4 TAPE ----- ;._ .. .:-_L:.:..W::::::-1:.:::... • WRITE CORE TO TAPE REQUEST DISI( DRIVE TO BE COPIED ON TAPE ~::::·iI '7 '3ft-~~.~ _ _~ REQUEST 0151< DRIVE l\r~D PACI( LAElEL FIND LABEL Of~ TAPE AND COpy TO 0151< COpy CONTENTS OF DISK DRIVE .. ON TAPE . ~ '" -......... :. ' @ ~ lJI When the name is typed, the NIMS- TASK program generates a o card image to execute a fixed coreload and transfers control to the non-process supervisor. The non-process supervisor with the card image in its input buffer then performs a FLET search and proceeds to execute the coreload. The data reduction programmers requested that a current date be printed on the assembler and compiler output listings. This was implemented in NIMS-.TASK and the non-process supervisor such that any control message printed by NPS would have a date loaded from the fixed area of TASK included on the end of the line. The date is stored in TASK by executing a program called DATE where the date is requested by the typewriter as follows: TYPE IN DATE -DD MMM YY- When the day, month) and year are typed in~ the program converts o them to print codes and stores them in the fixed area of TASK. 8. SUMMARY Every attempt was made in the implementation of the NIMS monitor control system to provide the data reduction programmers and operators with a convenient system oriented to telemetry data reduction. This endeavor has been accomplished and further activities will be directed to additional facilities for the convenience of the programmers and operators. 16 cZ/r2, INVESTIGATION OF .' ABNORMAL OPERATING CONDITIONS ... o COMMON MEETING San Francisco Dece,mber II, 1967 Kenneth R. Ande:--sen ~,,' Senior Field Enginee:--i:~g S:;:'2c:2.~i.s: Area 12 Technical A.sS~5~c;-4(;e G~-c-~~:; San Francisco o c2/3 Investigation of Abnormal Operating Conditions o A few short years ago many of our data processing system error recovery procedures were hard'ware dependent. That is to say the program hU:lg up until the hardware circuitry recognized that the condition causing an er::-or had been corrected or reset. 1401 systems stopped with a Process I Reader Punch, Printer, or Tape error-indicator lamp on the operator's console I I directing the operator to inspect a particular device. The reader may indicate a "reader check" (i. e., card read or checked :n error), "punch stop" (i. e., card misfed or jammed), or a tape t.:::-:i-;: mc.y ready. The system could not continue until the operator had cause of the error by refeeding the error card I :".0: ::'2 correc~ed L~2 correcting the feed proble:n I or making the tape unit ready. The point I'm trying to illustrate is that the problems were fairly obviot.:s a:1d the improper restarting of the system difficult when viewed from todays' s environment. <. ~"" " The design, architecture, and flexibility of System /360 makes th:s type of operation impractical. Error information is presented to the program and further visual indications to the operator are dependent on the system con-:=rol program. Since, for example, a system /360 Model 30 can run under BPS, BOS I TOS, DOS, ~-.-- -~~~---- as, .. -....---------------.....-.. emulators, or a user written control program, an -------~--- ..-.-- .. --------.~--- ... -------------~- .. --...- - - - - - - - - .. ---... -~- Page l operator must be knowledgeable of the specific system in use. Let me give you an example. A model 30 operator has just observed the system in the wait state. Hitting the start or interrupt button produces no effect on the system. What has happened? There are not outward error indications! No messages have been printed on the typewriter! If BPS or an Operating System is controlling the system certain bytes of main storage will contain a coded ,message indicating the reason for the halt. Only pr,ior kno'wledge will direct the operator to display this area. Furthermore, interpretation of this data can be in zoned decimal, binary, or packed format. Basically there are 3 main areas a system can be divided into. . o Processing Unit ll . (CPU), or heart of the system; the II Channel, which the CPU communicates with I/O devices; and the II Units." A fourth area could be "Non Operational Units. \I The II II Cer:tral over Input/Output These may be off line units or devices never installed on the system. Any address not O~ the system will result in Non-Operational Status if used. I would like to define the. effect of problems in each of these areas. <, \ ./ "- ", Central Processing Unit errors are caused by bad data on data busses or in key registers of the CP'U and result in a logout via system micro,;...p;:-ogramming. From 12 to 256 bytes of information and status at the time of failure are recorded and the new machine check PSW is loaded. Appropria te indica tors are ' Page 3 0 set in storage by the control program as operator information and the 1 . ·.••. ' I ".,.." ,--,j ~; system is placed in the wait state w,ith all interrupts disabled. (J~ Channel failures are errors that occur during an I/O device. communi~ation between the CPU and This could happen if the CPU signals a device and the device fails to respond within a specified time. A programmer requestirig a unit to read or write no data could also result in a cl1.annel error. Channel failures may result in a micro-program logout with appropriate indicators set in storage as operator information. -This area should be investigated closely as fail"\.lres can result from improper channel programming. Input/Output errors pertain to specific devices (tapes, disks, reader, punch, printer, etc.) to that unit. an~ This sense operation will transfer up to six bytes of from the unit to tl'~e o always result in a sense command being issued informa~ion CPU for analysis by the control program. Error recove:y will be performed dependent on the error. Tape read errors result in a backspace and reread with a TIE if possible. Each time this sequence has been performed eight times, a tape cleaner routine is executed. backspaced 3 records and forward spaced twice. The tape is This runs the record over the tape cleaner blade re'moving any excess oxide. After 100 rereads a~~e performed, it is considered an unrecoverable I/O error and the job may be cancelled. Tape write errors result in a backspace, erase and rewrite. Disk' read or write errors cause a retry unless a defective track is found. A defective track will cause a seek to an alternate track and a read or write. Unit record devices r,equire operator action at the device and a proper o 'Page 4 response to the programming system. ·0.',:1 The operator should examine the "/ sense information for the cause of error. If the job had cancelled under the Disk or Tape Operating System all the pertinent information ·will be logged on the typewriter; however, it must be decoded with respect to the specific 1/0 unit to obtain all the meaningful information. The same error on BPS or BOS would result in the wait state. Unit record type devices will require operator intervention. Restart pro- cedures require the proper reference SRL. Operating guides for all devices should be available to operators. . o . Proper maintenance of materials can save countless hours and headaches. Initialize all disk packs before use. Notice that the plant has affixed a label indicating tested bad tracks. These tracks should have alternate tracks' assigned during your initialization. This is necessary because surface analysis performed prior to shipment tests the complete usable surface for each track. Subsequent use of these tracks will be unpred~ctaDle ~""" ,. and dependent on individual.R/W head tracking on each disk drive. Tape must also be properly initialized I even in an unlabeled shop. Tapes are always checked by logical IOeS to ascertain if label information 0"'" ,'., . exists. An. improperly initialized tape my result in a permanent tape read error and cancellation of your job. This can be avoided by writing a TiVI :2/7 ~-- - ----------._._-.----....-------._-----_._-_.---- ..... --------..- - - - - - - - - - - - - - - - - - - - - - - "--"--.... ~----"---.------ .. Page 5 at the beginning of all unlabeled tapes. Remember the seven or nine o track tape marks can only be read error free on their respective drives. Mark all reels plainly for use on one tape drive (i. e., seven track Drive 183). Operators should clean tape drives as often as necessary to minimize tape errors. Card decks should be given proper care. Plastic edged decks are best in high usage circumstances. Master decks should never be used except for reproduction. This is your best protection against card decks that ran yesterday and program check today. Be certain you have an IBM card gauge and check for punching off registration periodically. A high L'lcidence of reader checks or one card that cannot be read also require chec~L-:g with the card gauge. What methods should be used during isolation of an abnormal operating condition? This depends on a great many variables; however, a certa:n oasic attitude should prevail. How can I obtain the maximum usefill aJ.".c. meaningful error dala for analysis by the programmer or IBM engineer? 11(, ., \' .;', The first point should go without saying, but all too often goes unheeded. Stop! Determine what the system will tell; you may have to ask (i. e. , display appropriate core locations). Remember I a hardware fai~ure does not neces sarily produce a red light indication. On DOS or TOS only by displaying Main Storage locations 0-3 can it be established that an error Page 6 has occurred. On BPS and a BaS hex location X '32' contains the error indicator. -What action the operator should take is described in the operator's manual .. If a machine or channel failure has occurred I a logout will take place. The system is placed in the wait state to allow the operator to run SEREP. The II System Environment Recording Edited Printout" program is a stand-alone card deck that will interface with IBM control programs I determine the type error that has occurred, and print out all pertinent information and . status of the system at the time of failure. This program will be provided by your Customer Engineer at installation. SEREP will print out from 12 to 2S 6 bytes of logout area (dependent upon CPU type) I old PSW' s I new PSWI s I CAW, CSW, GP regs, Floating Point Regs., or sense information. C ';l It is especially useful when a customer engineer is not on ·site. It is essential that all operators be versed in rocognizing a SEREP request! A core dump or re-IPL at this time will destroy any i.nfonnaUon of value. SEREP will pinpoint invalid use of channel programming I use of non-opera- tional devices, and bad 1/0 devices. All SEREP runs should be saved for , ." .-.... analysis. I ' .. , Only after the operator has collected all meaningful data for subsequent analysis should a run be attempted. This is particularly important on intermittent failures. o If a SEREP run was not requested a core dump should be taken. Save all. core dumps I console logs I output, input, program decks. Documentation . \ Page 7 rf", I i '-' to the extent of recreating the failure is best. / Try to isolate the culprit by changing devices, restoring disk packs I using other card decks, or if possible run the job on another system. Of course if the operator believes a hardware system failure exists I he should follow the normal procedures for notifying his customer engineer. If the problem seems to be in programming all the pertinent data should be returned to the programmer. Experience indicates the best approach when system time is available is to rerun a failing job under the supervision of the person or perso:1s responsible for analyzing the problem. Th~s quickly determines any procedural or operating problem and gives you first-hand knowledge of the events leading up to a specific problem. Many times what one person feels is irrelevant is the key to the problem. If your programmers after,thorough analysis conclude that IBM's ~ p~ogra;,!,~.s >"'. are not meeting specifications or a new release level produces a change in a program's operation I contact the applicable IBM representative. If your programming system is not at a curr·eni level, check the latest an:lour;.cement letters. The problem may be fixed by updating your system. Many ~d-O \ I Page 8 0'·; problems are now fixed with product temporary fixes (PTF' s). These are ," patches or modules available to correct problems before they can be included in an official release of the programming system. If no PTF is available Field Engineering will determine a temporary fix or circumvention and submit an APAR to resolve your problem. A meeting with both your hardware and software customer engineers at installation time to establish adequate PM schedules and error recordin;and reporting procedures can insure a maximum system availability. I ~ The smooth running of today's system requires quick and accurate diagnosis of hardware I program, or operational problems. Our best solution to this is continued co-operation.'" .......... .~;;.;.;:;..;;;:;= .. ·,_~.;;;; ",,;,:.:;:,,;,:;;;;,,=c;.:;,.~;:"'.;.C;; ...•·.;".. :.;·•. :.:.C.: •.:•..:.;..::..:._;.;;..• :..•::.::.: ••.:;':' •.C.;o;.;.:,;;.:::,:;',.;;,:.;,.:, INVESTIGATION OF ABNORMAL OPERATING CONDITIONS «"'ijtth' f"j'""Y"fft'f" shiH '+ii'Mtr o SYSTEM CPU I NOT OPERATIONAL UNITS i I (OFF LINE-NON-EXISTANT) :--------...- o ~ 8- --- . I/o ·/--T---r 11 . r--~ , II 0 f I I... _ _ o I 1- - - ( t .J I E L ---t'_ _- J ..........._.. _-_... _._....- - - - . , I I o CPU PROBLEMS CHANNEL PROBLEMS LOG OUT VIA MICRO PROGRAM a. 12 BYTES MOD 30 b. 256 BYTES MOD 40 UP NEW MACHINE CHECK PSW PLACES SYSTEM IN WAIT STATE APPROPRIATE INDICATORS WILL BE SET IN STORAGE a. b. OPERATOR SEREP G' _ _ _ _ _ _ _ _ _.lIIIIiiIInriiilliillCWllliiillillrWiIiiIINmlillliilii) RIilllifiiiW@"IIIiiiii"""IiIIiIiII-·".'W'--iIIIIiIlJ·llIiIiiiIww"rliiiiliir"l"f_'ftf""IIiiiiiiIHiiIiiiii"aifbiiilij,'eie_"ijShiMbiiiilil-Wiiilliiijijb±ioiiI!ii·'rl±rtiiiiiljjjj········iii/Iiiiij",jJr-fiiiiiiii· .. ifiliiilllittrifiliiiil··Wiiiliiii···{·.·wM··ttifiiiliii ... fflbii\iiilii"tlteiiiilliitrriiiiiii""O#_Wrlfeu·· .. ·triiliiiii"tH_ritfifilillillbW".""j··IIiIiIi·$-6_ri##tiiiiiiii· . ·lijlliliilt·ij_h±6i1iil11td'Wlll/ltrl·j_"ttftiiMjij .. ·.f"tlllilliliWIlll!lili·'fi_'''"i_ttitt_ttllilllllllillillllilil''#UIII"$, _'.- ." :Vb 1 cL.. o I/o UNITS SENSE INFORMATION IS READ FROM THE 1/0 DEVICE IN ERROR APPROI?RIATE ERROR RECOVERY IS ATTEMPTED TAPE READ ERROR a. TIE IF POSSIBLE b. BACKSPACE REREAD c. TAPE CLEAN ROUTINE o TAPE VVRITE ERROR a. BACKSPACE -- ERASE -- REWRITE DISK ERROR a. RETRY IF DEFECTIVE TRACK SEEK TO ALTER NATE - RETRY : b. UNIT RECORD a. b. o OPERATOR ACTION AT UNIT OPERATOR RESPONCE TO SYSTEM CONTROL PROG - - ~ ~- - --- - - ~ - -- -- - ...... .:.;,. ';;::;:;::;;" ...;;.,.-.;.;.,;;: ..;;::.;;,-••• ..;;~.;::.:.:-~-;;..:.; .....;~.;~;;;;.; .• ;;-;,-". .-. . ....~~= ;:-.:.;.;:~.:;,;;:::-,:;- :~-:.;;;~.::..-.;;.;::.;.:.~:~:.;:;-.=..;;;;.;..;;.; . "-. ._ .. ----.. ----.. _....... - o TAPES MUST ALWAYS BE PROPERLY INITIALIZED TAPE MARK AS FIRST RECORD VOLUME AND HEADER LABLE FOLLOWED BY TAPE MARK OPEN ALWAYS CHECKS FOR VOLUME LABLE FOR MAXIMUM USER PROTECTION UNREADABLE RECORD WILL RESULT IN UNRECOVERABLE I/o ERROR 7 - 9 TRACK TAPES ONLY READ ERROR FREE ON RESPECTIVE DRIVES o a. INCLUDES TAPE MARKS MARK ALL TAPES CLEARLY EXAMPLE: 7 TRACK MODE x '90' 7 TRACK MODE x '68' .1 WORK TAPES SHOULD BE PERMENENTLY ASSIGNED. EXAMPLE: 7 TRACK WORK DRIVE 183 o DISK INITIA1rZE ALL PACK PRIOR TO USE FLAG ALTERNATE TRACKS AS INDICATED ON TEST LABLE o FAILURE TO DO THIS WlAY RESULT IN UNPREDICTABLE ERRORS ON THOSE TRACKS TESTED AREA BACK UP TAPE ( CARDS OR PACK) FOR ALL SYSTEM PACKS c· I' o CARDS HIGH USE DECKS PLASTIC EDGED MASTER DECKS FOR REPRODUCTION ONLY BEST PROTECTION AGAINST PROGRAM THAT WORKED YESTERDAY - PROGRAM CHECK OR MALFU~CTION TODAY CHECK PUNCH REGISTRATION PERIODICALLY WITH CARD GAUGE DONIT OBSERVE PRINTING ON CARD FOR REGISTRATION READER CHECKS REQUIRE CHECKING WITH CARD GAUGE .. '\: " 1 '. ",. o S ystem C E nvironment R ecording E dited P rintout PROGRAM TO PROVIDE PRINTED ERROR INFORMATION AT TIME OF FAILURE LOG OUT AREA INFORMATION a. 12 BYTES TO 256 BYTE DEPENDING ON CPU MODEL . CORE LOCATIONS 0 - 128 a. b. o OLD PSW'S NEW PSW'S c. CAW d. CSW e. ~'? REGS f. FP REGS STAND ALONE CARD DECK SUPPLIED BY CUSTOMER ENGINEER ESPECIALLY USEFUL "WHEN CUSTOMER ENGINEER NOT ON SITE PROGRAMMING SYSTEM WILL REQUEST SEREP RUN CPU FAILURES CHANNEL FAILURES BPS - BOS UNRECOVERABLE I/o ERROR BPS - BOS NOT OPERATIONAL UNIT o .. ..;::.::. .. -"':"''':'':'':''..:,:,:,.:..::... :.;,':: '-:'::~:....-.:..: ;;.: o INVESTIGATION ON ALL ERRORS GATHER ALL AVAILABLE DATA PRIOR TO CONTINUING OPERATION LOOK IN APPROPRIATE CORE LOCATION INDICATOR BYTES BPS - BOS BYTE X 1321 DOS - TOS BYTES 0 - 3 ONLY INDICATION MAY BE SYSTEM STOPPED IN WAIT STATE ALL INTERRUPTS DISABLED TAKE SEREP RUNS WHEN REQUESTED IF SEREP NOT REQUESTED TAKE STAND ALONE CORE DUMP SAVE: CORE DUMPS CONSOLE LOGS PRINTED OUT PUT INPUT DATA PROGRAM DECK TAPE DOCUMENT THE FAILURE AND IF POSSIBLE SET UP A RUN THAT WILL REPRODUCE THE FAILURE ONLY AFTER FULL DOCUMENTATION SHOULD CIRCUMVENTION BE ATTEMPTED c' 0230 PROGRAM SUSPECT C." !.' RETRY NEW COpy FROM MASTER DECK RESTORE SYSRES ( DISK - TAPE) TAPE ERRORS CLEAN DRIVE TRY TAPE ON OTHER UNIT NEW TAPE DISK ERRORS NEW PACK OTHER DRIVE RUN JOB ON SIMILAR SYSTEM HARKWARE FAILURE - NOTIFY CE BEST APPROACH IS TO RUN JOB UNDER SUPERVISION OF ALL CONCERNED a. b. c. d. e. o HARDWARE CE SOFTWARE CE SE PROGRAMMER OPERATOR ~ ,'- .. 01.··. PROGRAMMING SYSTEMS ANNOUNCE~IIENT LETTERS PTF APAR INSTALLATION: MEET WITH CEIS ( HARDWARE -. SOfTV/A?.2 ) PM SCHEDUALS ERROR RECORDING REPORTING PROCEEDURES SMOOTH OPERATION REQUIRES QUICK AND ACCURATE DIAGNOSIS HARDWARE SOFTWA.~E OPERATION <: 1'..." .t. " BEST SOLUTION COMMUNICATION CO-OPERATION " UNIVERSITY OF MASSACHUSETTS COMPUTER SCIENCE PROGRAM CURRENT RESEARCH TOWARD THE STANDARDIZATION AND FORMAL DEFINITION OF pL/I by o JOHN A. N. LEE Prepared for the l.finter Meeting It COMMON Users Group San Francisco. December 11-13, 1967 o c233 o ABSTRACT In April 1966. a subcommittee of USASI Task Group X3 0 4.2 was established to investigate the standardization of PL/I. Since that time, two working committees have established with explicit charters: Group I: The Resolution of the Language pL/I Group II: Formal Definition of pL/I and This paper deals specifically with the work of the committee on Formal Definition and its relations with the definitional task forces within IBM. This paper will discuss the techniques of definition as proposed by the committee. the uses to which the definition is to be put and the implications of the work of this committee on the standardization of other computer languages. A familiarity with PL/I is not presumedo o The need to O ~rogram digital computers in abstraction as opposed to the ·~'1 , , subjective wiring of boards has lead to the development of a variety of programming languages o These non-natural communication systems are classified, broadly according to their orientation toward the human user or toward the moronic detailed instructions of a machine o Whereas the human desires a language akin to that which is either his mother tongue or one of the other artificial languages with which he has been associated, many of our current languages have been developed from machine dependent codes towards these desires and have not yet reached the half way pointo Althou~h there are many proponents of the concept of ultimately using natural language as the means of describing a computational (or more specifically, a transformational) process, these forms of input suffer from two major defects: a) they are verbose, and b) they suffer from many possible ambiguous contextural translations o 4() Further, we currently do not thoroughly understand the syntax and semantics of natural languages~ In any case~ mathematical notation (language) has developed over the past few hundred years in spite of the existance of natural languageo Existing analyses of programming language, such as found, for example, in the ALGOL 60 report [l]j place emphasis on the syntactic form of the concepts and definitions u X304~2C2 In contrast, the approach being proposed by the subcommittee of the USASI, concentrates on the role of constituents of a language as commands or instructions when the program is executed in a machine o This implies that the programming language is to be considered in relation to a machine 9 be that machine actual or abstracto Classical abstract machine models such as Turing machine or finite automata, which are obvious bases for the definition of language semantics, lack many of the salient features of an objective situation o which are relevent to the description of the execution of a programo For example, Turing machines lack the random accessibility of current memories, thus throwing the burden of (say) table look up to the wiles of the definero 2 Conversely. some models l.rnitate machines more accurately but are unsuited to the general definition required in the specification of a standard o o For example. if there exists ail executer (compiler, interpreter. or translator) for PL/1 on a particular machine, then that executer is de facto definition o In paraphrasing De vCarte (I thinkp thex'efore I am) a compiler can be said to execute and therefore to define o On the other hand i an assembly lising of a compiler cannot be said to constitute a nationwide standard and in any case contains many algorithmic processes of which are irrelevant o analysls~ recognition and (1n particular) generation Further as the state of the art compilation advances p it must be expected that the efficiency of compilation and the optimization of the generated code will However. a compiler improve~ thereby presenting an improved definitiono transfo~ms an input in one non-natural language to another non-nat.ural langto.age which is not a standard" Further only the execution 0 of this target language can reveal the semantic nature of the input (or source) language 0 We must, therefore. raise the question as to how a natural language description of the syntax and semantiCS fills the basic necessities of a specification o In particular. a definition which may be used as a standard must possess the following qualities~ - it must. be rigorous complete - it must structure underlying concepts ~isplay - it must distinguish between language defined elements implementation defined elements undefined elements Current experience with ALGOL 60 [1] and FORTRAN [2) shows that the natural language descriptions of a programming language do not meet all those requirements o Ambiguities exist in the current documentation standards of these languages which have been inserted as a result of the use of a natural language as a .descriptoro t..Jitness the list of "trouble spots" reported by Knuth [3] 0 o 3 Similarly~ natural language specifications tend to overlook the possibility of the effect of executing a procedure in which the values of certain entities fall outside the domain of the specificationo That is, current specifications only define the semantics of a program that exactly fits the task for which it was designed o For example p the ~ORTRAN specification (sec 70102 0 l03) states: "701020103 Computed ~O TO Statement o A Computed r.O TO statement is of the form~ 00000, k ), i """11 where t.he k S are statement labels and is i an integer variable reference~ See 10 0 2 9 8 and 10 0 3 for a discussion of requirements that apply to the the use of a variable in a computed GO TO statemento Ij Execution ot this statement causes the statement identified by the statement label ~ to be executed next~ where j is the value of i at the time of the exeuctiono" o However. no mention is made of the actIon to he taken when the value of the integer variable i is outside this range o Yet this situation can occur during execution without protection or detection at compIle time o In my own shopv we use four different versions of FORTRAN which treat this problem of values outside the range of definition in different manners o If a description is to demonstrate the structure of a language both at the syntactic level and the semantic level~ the elements of the language muse be fully then the interrelation of both expanded~ ~or example, consider the interrelation of COMMON p DIMENSION and EQUIVALENCE in FORTRAN o planation of this interaction 1s verbose and contains many !l!, A vel!bal exelses, excepts i the subject phrases of which are not readily accessibleo ~ and On the other hand, an algorithm for specifying the interrelation of these statements is definitive though lacking the ease of readabilityo 4C) Yete why should a specification be generally readable? In no way can we consider that specification or a standard to be a teaching instrument and further, 023? 4 a specification or standard must be aimed at the designers and inspectors of standards and not the general public. For example. a building code is couched in the standard terms of the civil engineer or the building inspector and is not of general concern to the person usinl (aay) an auditoriumo o If such users have questionl regarding a building code, then they rely on the technical ability of the experts. Thul a Itandard specification which i8 based on the technological tools of the profe.lion is • valid Ipecification. However, in the computer industry there are insufficient people trained to have an understanding of the theory of programming to bs able to act as the experts for the g.~eral user. This is the fault of our educational .yatem and cannot be uaed as a deterrent to the development of atandarda baaed on the Itate of the art. The purpose of a standard definition exceeds the bounds of merely forcing a minimal conformity upon implementera. A definition should also act as an information Iystem to an.war such questionl aa: o "Is •••••••• a legal part of the lanauaI8?" "What happenl if •••••••••••••••••••••••• ?" "If thil ele.ent ia added to the language, does it create any ambiguitiel?" "Does the compiler provided by the manufacturer conform to the stal\dard.?" Thus in some respects a standard must be an information retrieval system, in other respects, it needs to be a model translator and executero However, ther.e is a point beyond wh1ch this .tandard cannot pa.I, that 1a, there i. a limit to that which can be thought of a. closing the credability sap. For example, arithmetic mUlt b. considered to be implementation defined and thus outside the Icope of the definition. How.ve1:, the que'tionl, "What doe. 0.1 + 0 0 2 mean?" can b. answered a. "0.1 + 0.2 i. an expre.lion, where 0.1 and 0.2 are real decimal fixed point con.tantl and + ie the infix operator reprelenting the operation o 5 o of addition Then the r'luestion\} fVWhat is the result of evaluating the Q " expression 0.1 + 0,,2?" might be "The result of evaluating the expression 0 0 1 + 0 0 2 is a representation of Oc3 to the same base and scale of the operands and the precision of the greater of the precision of the operands + external procedure + O,I* O,I~ + DELETE (3,3* [ I (O,l* event option»]) where the enclosure of metacomponent names in braces eliminates many of the problems of ambiguity in the metalanguage. The parenthesis groups are of the general form of an implied DO list in a FORTRAN input/output statement with the variation that the limits of the repetition precede the list and the increment is always unity--thus the construct +(l,3*A) means that the metaresult may be formed from 1 to 3 concatenations of the terminal A. The same metalanguage may also be used to define the syntax of the canonical intermediate text and it is further anticipated that a transformational grammar can be developed which uses the same basic nomenclature. However, the terminology of the analyzers, synthesizers and the executer cannot be readily expressed in Backus Naur Form though some variant of AMBIT [7] would seem to be appropriate. The "execution" of the input text using the schema shown in Fig. 2 is merely one approach to the problem of definition. An alternative technique would be to define a fundamental language in detail according to Figo 2 and then to define transformational grammars on languages to transform them to this fundamental language. o~her The choice of this fundamental language could be one of the biggest political problems to face the data processing section of USASI. In fact, if PL/I is all it is purported to be, then it is the obvious funda-, mental language. However, the growing band of advocates of APL (or Iverson o 9 o Notation) have a candidate for this position which has already been shown to be adequate for the formal description of a machine [5] and hence should ~H~ adeQuate as the target language of syntax directed translator o T~e ".'.:t1d type of linear executer described by the Hursley and Vienna definitions hy definition executer of X3 0 4 o 2C2 or the translator described in the previous paragraph p cannot adequately describe a language which is salf modifying or self generative o "inter~'reter" However, a feed back loop from the ttexecuter" or to the syntax analyzer will solve this problem o On the face of it. a definition executer does not appear to be as efficient as a stnnd~rd structure Q compiler for the Rtrnight forward task of recognizing an input This conclusion is based on the premise that no matter how efficiently the specification is designed, the analyzer portion of the executer will spend some considerable 4[) ~ercenta~e of its time exploring blind alleyso Further~ the keys of string recognition may be camouflaged beneath the wealth of associate syntax p every element of which must be verified before even a preliminary recognition can be made o For example, the first three characters of each BASIC [6] statement are a key to the type of.;.~:.atement following. As another example. a compiler implementer has at his disposal certain machine dependent information which he may utilize to improve the efficiency of the recognizers o In particular. the sorting order of characters permits the testing of characters in a relative manner so that a binary tree can be built. in which the length of the maximum branch (representing maximum number of comparisons to be made in recognizing a character) is a minimumo The maximum tree branch needed in a USASI FORTRAN compiler for the recognition of a keyword is fiveo A syntax directed translator does not have this ability and thus must chain through a linear sequence of alternatives till the list is exhausted o 0 That is. for example. to recognize that the character I is not an element of the alphabet requires only five comparisons using a binary tree search in a compiler (Figo 3) but 26 comparisons in a ..._._. -_....._ - - _ . ""---..----..-- .. -..•..... ........ "--.--.-...".- •.•... ~ "~~ 10 syntax directed analyzer. Under these conditions, a definition executer may o never replace the specialized compiler and with the given purpose of definition, the speed and efficiency of execution is not in competition o As programming languages become more permissive, the task of defining a language in prose will become more difficult and there will be a corresponding increase in the complexity of a compiler. However, the definition execution and syntax directed translator can handle this expectation. o 11 Sf''' ~.._~,4.RY -...-.._ .....-.... o . In this paper. I have tried to explain the concept of a language definition based on the techniques of syntax directe~ '~mpiling and translation. Whilst a standard definition of a computer language may be incomprehensible to the majority of the programming community of today, those who are concerned with implementing systems conforming to the standards will be members of the minority (by definition). A definition executer as described herein will not only define the syntax and semantics of a language but also outline the translatory techniques of a compiler. In comparison. a building code contains parallel partitions whereby the design criteria ~ techniques of construction are specified. Programming languages are intended to be languages of precision. 0, ,Ii, are relying currently on langu~ges Yet we of imprecision to specify the syntax and semantics of those same programming languages o If for no other reason than for consistency and perhaps to maintain the image of the industry, the formal definition of language will repl&c. o ~he current prose definitions. ~-- , ..... ---- t t Concrete Text Abstract Syntax I • &.--- ........ _ ... ' IlL ~ ~ Translator Concrete Syntax ~ , Abstract Text ' , t ~~ , f Data Sets •-- .... _ ... ~ - I ,"'" - - -. .... ..aa _ _ --,, I -- - - v- -- • o -- , ~ ..., ~ Interpreter ..", Storage I ...... t , I Informatj on • _-_ ... , ,varies with ,source prograit .. o Processors ~nformation lis dependent ~n language IBM Definition Schematic (Figo 1) --, o I t -~ 8Ml declarative source syntax ,-- I I source program and data tree ....-.. -..... ~-..... b;J , ..... ~r---i-m-p-e-r-a-t-iv-e------~ l.::l ~ '\- .. - --' translator canonic program and data tree - 8. Ml - - -'. '.' canonic pro gr am and data text , .... - .- Key: -_ _... __..... .. , , ~ . -._._--_..... - ....... - ..... I ____ cOo ........... , ~--- . ~ - - Information varies with source program --- ~ "output" t or • "results" • ---------------------, '1 rid -.---- declarative canonic system '----- ~-- imperative executer program ~~-- ,, SM - Synthesizer Machine AM - Analyzer Machine EM - Executer Hachine (These are ffxed over all lan2Ua2es) Information varies with language being defin~d. DIAGRAM fOR THE X304o2C2 DEFINITION EXECUTER o (Figo 2) 2'-17 o p' Alphabetic Recognition Tree (Figo 3) REFERENCES o o o 10 Naur. p~ & Woodger. Me (Eds)~ Revised report on the algorithmic language ALGOL 60. Comm~ ACM V6 pp l-20~ 20 Anon~, 3c Knuth. Do E~, pp 611-618 FORTRAN vs Basic FORTRAN. Comm. ACM V7 1)1' 590-625. The Remaining Trouble S1)ots in ALGOL 60. Commo ACM VlO 0 4~ Abrahams, n~ et ale Report of Ad Hoc Task Group on Formal Definition, Private Communication to X304.2C2, May 18, 1966. 50 Folkoff. Ae D~ et al. Systems Journal #3. A Formal Description of System/360, IBM 1964~, 6~ Lee, J. A. N. The Anatomy of a Compiler. Reinhold Publishing Company, New York, 1967 Appendix C. 7~ Christensen. C~ Examples of Symbol Manipulation in the AMBIT Language. Proc e 20th Natl~ Confe ACM, Cleveland, 1965. Programm1n~ .. -.-.-...-.-.-..--.-~-~- .~-~~---- A "SMALL" OS SYSTEM / As Described to Wade Ao Norton (1125) By Max L. Allen (1164) o Rust Engineering (1164) of Birmingham, Alabama, and Pittsburgh, Pennsylvania, a company which specializes in engineering design and construction, has recently become a division of Litton Industries. Their work includes (1) Design and construction of process mills--paper mills being a good example, (2) Renovation of office buildings, (3) Maintenance and construction work for government, and (4) Design work for governm~nt, including sow£ launch facilities at Cape Kennedy. Rust has offices at Calhoun, Tennessee; Montreal, Quebec, Canada; Vancouver, B. C., Canada; Brussels, Belgium; and Mexico City, Mexico--in addition to their principal offices in Birmingham and Pittsburgh. Rust employs about eight hundred people each in the Birmingham and Pittsburgh offices; and, even though the mix in the jobstream is quite different at the two installations, they are able to generate a single OS system to meet the requirements at both places. In Birmingham the mix is approximately 65%-35% engineering vs. business data processing, "{,Thereas in Pittsburgh the ratio is about 15% to 85% (in favor of co~mercial work). Some of the work in Birmingham --quite properly classified as engineering--is engineering management information, rather than design or analysis. () In Birmingham it is possible to schedule very little of the work because report periods vary for different contracts. Near the end of a report period, they likely are making several runs with their management info tools. In Pittsburgh one of their big jobs is labor costs, which is often run several times a day. However, staffing is not too different in the two localities, with each employing about ten or twelve analysts and programmers. In Birmingham they have two machine operators; in Pittsburgh, four for two shifts, therefore .employing two per shift just as in Birmingham. On the other hand, there is a distinct difference in the number of keypunch operators--due to the difference in the amount of input data. In Birmingham three keypunch operators are employed by the computer' center, whereas in Pittsburgh (where the mix is 15%-85% commercial) the accounting department has ten to twelve keypunch operators on its payroll. o You may ask--and properly--why I present this paper. I am the first to agree that the real author is Max Allen of Rust's Birmingham computer center. Unfortunately, he has been unable to make either the Cincinnati meeting or this one. In Cincinnati this paper was presented by title to the OS Committee. That group agreed that the subject matter is far more appropriate to the full S/360 Project. Thus it appears on the agenda for today. Rust's computer department exhibits a certain rugged individualistic spirit--of just the sort we want displayed by COMMONers--to dig into the uncharted and build there something of real value. An~, having mapped the previously unknown, they have demonstrated to the fullest a second trait we wish of all COMMONdom--the willingness to share with others their knowledge, their system, and, indeed, test time. o I can truthfully say that we would most likely be in some stage other than the final one of conversion from a 1620 system to S/360-40 OS, had it not been for Rust's pioneering of OS and their willingness to share with us the fruits of a then hard-won prize. (My only reluctance at making the last remark is that it might be construed in some quarters as implying that this paper is in payment of a moral debt. That is not the case! At no time has Rust ever implied that somebody owed them anything; furthermore, this paper was requested by your former OS Committee chairman, Mrs. Barbara F. Young.) And certainly, Rust's work deserves reporting--OS is for the MOD 30 and MOD 40, and both COMMON and IBM need to be told this fact. The remainder of this paper fills in the details as told to me by Max Allen of the Rust computer center (and observed by me in the course of Southern Services' conversion efforts)o Max's position at Rust is as the Number One man on the systems and applications side of the activity, and in the absence of the manager he assumes these functions, also. This manager, who was sweating the dollars and cents of OS pioneering while Max perspired over the bytes and bits of the work, is Bill Mylius. Bill is in charge of computer facilities at both Birmingham and Pittsburgh. And, while this story is basically one of implementation and told by Max, the policies reported in the telling of the story are Bill's. o Rust tried DOS and it did not give the flexibility they needed. This was especially true with respect to structuring of programs larger than one core load. CALL LINK under DOS FORTRAN helps, but it does not solve things. In reality it creates greater rigidity. If . -3Another initial consideration in the choice of as is that the froject Management program and ICES (MIT) were both written to run under OS. Later developments of ICES push it out o"f 64k and only turther justify the choice. o Core requirements for OS of slightly less than 16k were evaluated against both the 6k DOS requirement and the 10k needed for DOS-2 with fixed scheduler partitions. It was decided, Max said, that the additional core devoted to OS more than paid for its dedication in a more powerful system, "particularly since the linkage editor is so flexible in how one may structure his program." Still another item which influenced Rust's decision at the time was that they were enthused over the prospects of using fullblown PLI. Their experience to date has been that it is clumsy in both compile time and run time, but very easy for the programmer. At the time (November 1966), PLI was not supported under DOS. It is known that PLI has been and is continuing to be improved. That as yet they have not gone to it as their primary language has not caused them to regret their choice of OS. In fact, they would make the same choice today--OS over DOS-which they made more than a year ago. (And, I might add, today they would have a lot more support from IBM in its implementation.) Rust considers the following as disadvantages of as or, more properly, as part of the price paid for the more powerful system: as 1. There is lots more to learn about system for driving a 360. than about any other 2. OS can do lots more, but this flexibility also creates problems of choice. 3. To applications programmers, JCL presents great problems. There are no clear-cut logical patterns to followe. 4. Operator requirements are not easy for any method of driving S/360. It is a complicated machine. But with as, the training of operators is considerably more difficult. 5. Rust paid the price,also, (in November 1966) which IBM's lack of field knowledge about OS cost. IBM Birmingham was reluctant to send their p~op1e to school. Rust's CE worked on as when he had nothing else to do, and APAR anSvlers were such as, HIt looks like you got a bad tape." Rust started to SYSGEN on November 8, 1966, with Release 6. They obtained their first running version on December 23, 1966, with Release 70 In between there was much effort expended--mostly by Rust peop1e-before IBM finally imported a man from outside the local office. o o -4Actually IBM did not really begin to support OS in Birmingham until two Mod 40 insta11ations--A1abama Power Company and Liberty National Life Insurance Company--were being imp1emented o (Southern Services, Inc o , (1125) whom your speaker represents, has merged its operations with Alabama Power, an affiliated company.) It turned out that much of this trouble, which took more than a month to find, was caused by the Linkage Editor which was losing a CSECT out of the nucleus. o 6. When Max went to OS school in Cincinnati, there was not a single course offered by the New Orleans region. Because of the aerospace industry, some training ~n OS had been offered in Huntsville, but this was not under region sponsorship. In Max's opinion, the course at Cincinnati was a good course. Since that time, IBM has been schooling their people regularly and offering courses on a broader geographical basis. The know-how is available now; the marketing emphasis for as with the Mod 30 and Mod 40 is lacking. In both Max's and my opinion, this is something IBM should correct. Among the things they bought were l.Improved Job Management. o 2. Better Data Management. 3. More powerful Linkage Editor. 4. Identical systems for Birmingham and Pittsburgh even though the hardware and addressing differed slightly. In Birmingham their punch is a 1442 addressed at OOA, while in Pittsburgh it is a 2540 addressed at OOD. 5. Under OS, Rust has found that it is almost impossible for an operator to lose control of as by a misstep at the console. 6. Combining items 2 and 3 has made it possible to catalog programs and data and put them on disks for exchange between Birmingham and Pittsburgh. 7. Without the power of as to put programs elsewhere than on the system residence volume, Rust's programs would have required multiple syste~ residence packs a 1a the 1620. Rust did not run extensive timing tests, because they were not felt necessary in weighing OS against DOS. Enough was done (with programs which constituted a large part of the workload) to bear out the already known generality that os FORTRAN(E) compile-link and compi1elink-go were both superior to their DOS equivalents. They used only . FORTRAN because this was the only language in which they felt sufficiently o ... 5- proficient at the time. They have since used COBOL some, too, while they wait for a better-performing PLI. They ·checked compile-link using a Plant Material Thermal Balance program, which is their biggest job. They found that OS did the job in 8 minutes compared to 30 minutes for DOS. Using a Steel Stack Design program, they found a compile-link-go advantage of 22 percent while using as. o When they started, all they wanted was enough system to do some testing (and it was the hardest to come by). In the interval December 1966 to December 1967, Rust generated five releases. SYSGEN is now easily done in a manner that suits Rust's needs better than the cookbook method described in the SYSGEN manual. However, this is stated as a plus for Rust's experience and not as a criticism of followi.ng the book--which procedure will get your as for youo You can have a basic system for about 14k of core storage. This will include PCP (the sequential scheduler with all options transient instead of resident), support for a reader, printer, punch, one disk (for system), and four tapes. It would include the access methods BSAM, QSAM, and enough BDAM to access programs and compilers. It would not include a timer J indexed sequential access methods, nor direct access methods for applications data setso Rust's system requires 3F0816 bytes (or 16,136 10 ). To be exact, it is slightly more than 16M bytes, but slightly less than 16K bytes where K = 1024 = 2 10 In this amount of storage, Rust provides for PCP, interval timer, three disks J no tapes, two.punches (as described above), a 2501 card reader, and a 1403 printer o They have the standard access methods QSAM, BSAM, BPAM, BISAM, QISAM, and BDAMo They have resident SVC entries and trace table entries. If IBM ever supports just a plain timer, Rust will take it over the interval timer and thereby save a little more core. 0 The full direct access method, the indexed sequential access methods, and the trace table entries were included, because Rust believes they buy enough in supporting FE work to justify their inclusion. At the moment, Rust can do the work required of their system. But, looking to the future, they see more core needed, greater processor speed, and more devices to support. And they look upon their experience with OS as a great boon to future growth. A possible first step might be the addition of a second selector channel, if spooling under MFT-2 is shown to give reas~nable performance at the 65k level. Presented to the 360 Project at the San Francisco Meeting by Wade A. Norton, COMMON 1125 ~ . " H bi'l'YNit"d!i' 't" "T' "\ ' '!lJte' 'Lf 'f'UItl»WfiWWb b"! tfP'It",w"Hr't" wt . H"tW1'.'"Wu"flee&NHm"Hi 'II t · MW; etmLn/"b"'WHd* . '+ ~. / . I. 7 (Q/ o o 1) Working title of the paper: The 1620 as a Data Collector or Software, the Crutch Hardware Boys Lean On 2) Author: 3) Address and User code: 4) Position: 5) Time requirements: 30 minutes 6) Special Equinment~ (lantern) slides. Projector for 3 1/4 by 4 inch glass mounted 7) Level: 8) Machine: 1620 II was used, but the presentation will be for general information. 9) Abstract: The paper will cover the data collection methods used at the Sacramento Peak Observatory. The principle reasons for designing a computerized data collection system were: 1) Improve existing methods which used summary ounches. 2) Gain experience and insight into oroblems associated with data collection in nrenaration for third gener~tion equipment. Guy A. Gallaway Sacramento Peak Observatory Sunspot, New Mexico 88349 User #5053 Programmer .......... . ~~. . . .r~ ~ Intermediate The paner will also cov~r the roles ulayed bv the prograMming staff in this type of oneration. Namelv, software as a dia?nostic tool for the hardware boys in developing data reduction/collection instruments, and software as a useful and flexible tool for the research scientist. Three methods for data collection and reduction bv comnuter have been tried. o 1) On line, one point at a time, testing each point for parity and structural errors and storing it on the disk before the next point is generated. 2) On line, a record at a time, locking the source device out until the data has been tested and stored. 3) Off line, using 7 track incremental tape recorders, with testing and reduction heing done during slack times. / SESSION T.l.7! USER # COMPANY REPRESENTED & ADDRESS 652-2694 Monsanto Co. , Decatur, Ala. (314) MAl-4000 Monsanto Co. , 1700 2nd st., st. Louis; Mo. 63177 285-6655 Hooker Chemical Corp. Niagara Falls, N.Y. (215) KI5-7500 Catalytic Const. Co 1528 Walnut Philadelphia, Pa (815 ) 895-5194 Anaconda Wire & Cable N. Cross street Sycamore, Ill. 60178 S. Barr (212) 571-3977 Western Electric 222 Broadway New York N. Kurek (213 ) 341-3010 Canoga Electronics Los Angeles D. Adams (415) 961-1111 Ames Research Center Moffett Field, Ca A. J. Bill)S (805 ) 296-6681 Ryan Aero 2701 Harbor Drive San Diego R. E. Buckley G. F. Schoditsch 3438 George Polyzoides Theo. E. Bridge E. J. Uczen 'I c PHONE NAME j' ),. f' 1100 0 SESSION T.l.7 v COMPANY NAME & ADDRESS (213 ) WE3-7356 Human Factors Research 1112 Crenshaw Blvd. Los Angeles, Calif. (412) 621-3500 Ext.7138 Crystallography Lab. Unive of Pittsburg Pittsburg, Pa 15213 R. L. Ferral (916) 442-1201 USWB Sacto RFC Sacramento, Calif. J. W. Wheeler (919) 199-2311 Ext.357 Western Electric Co. 801 Merritt Drive Greensboro,N.C. Michael Robert Hale R. D. Rosenstein o USER # PHONE NAME L. V. Punder Joseph Sloboda 1117 Biological Station Nanaimo British Columbia Canada 7072 (313 ) 238-1631 Ext. 450 Flint Community Junior College Flint, Michigan 48503 ~5? -_._------_. __.._ - - - - o 1620 DATA COLLECTION or SOFTWARE, A CRITrCH TUAT HARIMARE BOYS LEAN ON Guy A. Ga 11away SaGramento Peak Observatory Air Force Cambridge Research Laboratories Sunspot, New Mexico 88349 o Presentation at the Winter Meeting of COMMON in San Francisco, California, 12 December 1967 o 1620 DATA COLLECTION (or, Software, a Crutch That Hardware Boys Lean On.) This paper will describe, in varying degrees of detail, three different methods of data collection. Each of these methods was developed and used at the Sacramento Peak Observatory, Sunspot, New Mexico. The Observatory is part of Air Force Cambridge Research Laboratories and performs basic research in solar physics. Two of the methods were on-line to a computer and the third, still in use, used an incremental tape recorder as intermediate storage. The overall goal of the project was to experiment and compare the use of real-time collection with remote collection on an intermediate device, such as mag tapes. We originally intended to continue this experimental approach with our third generation equipment before committing ourselves to either method. But now it looks like we will be doing a combination of both. To this end we felt we should implement these systems on an established machine. In this way both the hardware and software people could, and did, gain experience and insight into the problems involved. The immediate goals were to develop a more reliable system and establish a complete operating system. An earlier method made use of a summary punch and was very unreliable. We also wanted to try and develop some systematic procedures for handling this type of data, and to have available a standard set of reduction/utility routines for processing the data. But this approach usually meets with opposition from the individual scientist who wants a "tailormade" system for his project, the definition of which will usually change every few months. Since we are planning on implementing the same devices on newer machines, this attitude means that we are faced with the propsect of never-ending systems development. We have found that after the initial development an equal amount of time will be spent in making changes to meet specific desires. The goals of the system were always being jeopardized by frequent modifications in "mid- stream" . From the time we started to implement data collection, up until now (last week) there have been continuous changes to the system. These cover the full range from the data format to reduction procedures. None of the systems were developed as a unit and then examined and evaluated. This lack of a commitment to full development has been demonstrated to waste considerable manpower and machine time. The source of the data was photographic films, typically filtergrams and spectrograms, of various solar phenomena. We use a scanning microphotometer to read the films. Film densities are converted to a 3-digit decimal number and sent to the computer .----~-~ .~--.--,,- .. --..- - - - - - - - - - - 2 I, or the tape recorder. The computer used was a full 1620 II with binary features. The two on-line systems employed the paper tape channel for data transfer. We have an on-line plotter, but no conflict occurs since the plotter uses the write paper tape instruction and collection uses the read paper tape instruction. Termination of the data was done by sending a record mark on the End of Line (EOL) line. SYSTEM tftl The first method was the only one requiring a real time response. The characteristics of this system were: 1. 2. 3. 4. A 1-2-2'-4 BCD format. One data point at a time transmission. Packed data. Termination of the data string by a counter control. This strange BCD form, 1-2-2'-4, was a "left-over" from the previous system that used a pulse counter with this format. This added the problem of encoding the data to the normal data handling problems. This was the first instance of a hardware problem for which the software provided the solution. Figure 1 defines the formats used and shows how the paper tape lines were used. A minimum of 20% of data handling time was devoted to the encoding. The data was stored on the disk in one sector blocks of 31 points. Only every other point was flagged making the data appear as 16 6-digit words. (123123123123) The coice of two points per word of data was made to achieve minimum disk storage and still insure disk compatability with Fortran. That is, given a fixed point word size of six, and the array IDATA dimensioned at 16, the statements, RECORD (J) IDATA and FETCH (J) I DATA , will reference one sector of 96 digits. The unpacking of the data was done in a Fortran subroutine. The maximum data rate, 20 points per second, left ample time available for the programming required to handle each point. Total prograrrnning time requirements using the longest encoding routine, worst case, took only 2640 microseconds. The greatest time component was disk revolution time, worst case conditions being 44 mils. Figure 2 gives a detailed description of the timing involved. Originally there was to be an ID number sent as the first data point. But in order to speed up the process of implementing the system we used the ID number as an input argument between the mainline Fortran program and the collection program. This ID number was then the first point of each disk block, making each block 32 points long. Termination was to be done three ways. Two of these were similar, both using sense switches. The setting of one switch would indicate that the collection had been completed normally and reduction should begin. The other switch would indicate an operator error and for the current collection to cease and re-start. The third method, and the only one implemented, was by having the user specify in his Fortran program the number of points to be collected. This number was another input argument for the collection routine. What turned out to be the most significant advantage in getting the system going was the "off-the-shelf" hardware. Our engineers are" time shared!! wi th the whole Observatory. They are responsible for building and maintaining a very large number and variety of complex equipment. And as frequently happens under such circumstances the person that yells the loudest gets his work done the fastest. So by having working hardware we were able to complete the system sooner than if the hardware had to be built. The disadvantage of this system was its slowness - not only the data rate but the over-all system. Considerable time was required in the Fortran programs to get the data from the disk and unpack it. This, however, is a familiar story to programmers, minimizing storage at the expense of execution time. One problem in the early stage of development was the 1620. We had learned from IBM that each character signal should be maintained 10+ microseconds. The first try was a signal of l2~, which got "lost" in the CPU. A diligent pursuit of the signal with scope and probes convinced the EE's of the soundness of their design. The data left their black-box and entered the computer. To them it was unfortunate that the program, or programmers, couldn't find the data. Even elaborate overlay and dump routines failed to completely convince them that the data wasn't reaching core. Finally, the extension of the signal to 2~'s maintained the characters long enough for them to reach core. We were then able to collect data. SYSTEM 4f:2 The second on-line system used new hardware and software. The new hardware was designed and built by our own engineers. We wrote new but similar software. This system had several entirely new features ~ 1. 2• 3. 4. 5. o BCD compatability. Transmission of records of data. A source generated 6-digit ID. Variable data rates. Starting the source device with the computer. BCD compatability solved the encoding problem and cut down on the required programming. d.tal. 4 By allowing the transmission of a record of data we had to limit the total number of points collected in each record. We decided to use 1/2 of the available core, 24,000 digits. This was equal to 4000 data points three digits long, each point being converted to a six digit fixed point numher. Conversion to the six digit size was done in the collection program. Considerable time was saved by eliminating the slow unpacking routines in Fortran. We still limited the size of the data blocks on the disk to one sector of 16 points. o The hardware generated ID number was an aid to the file management problem. It was to be the first six digits of the data string. The number would be chosen by the user and selected on thumb wheel switches, and read out of a register. Also, a control was installed to allow the user to digitize at a variety of rates from 1 to 100 points per second. The collection of variable length records required the "locking" out of the source device. This was to be done by allowing the device to send only upqn receipt of a computer generated signal. The Exponent Overflow indicator was chosen as this trigger. This would require turning the Exponent Check light, EXP CK, on for 5 mils immediately preceeding the read instruction. The software was quickly written and debugged due to the similarity with the previous system. The construction of the hardware took considerably longer, mostly due to the manpower problems mentioned before. And before the system was operational there were more than a few changes in definition. () The first problem was the EXP CK light. The 5 mil signal was not long enough to turn on the data source. A testing routine was quickly written to vary the time and 250 mils was determined to be the shortest reliable length. The next problem was the ID number. The ID register read out too slowly. For any data rate greater than 20 points/second the first few data points would be lost. Designing a faster read-out didn't completely solve the problem, so the ID number was moved to the end of the data string, the last six digits. Moving the ID solved the problem of losing points but caused another problem, which is still in the system. For some undetermined reason the ID number is frequently, in half or more of the cases, seven digits long. In the majority of these the extra character appears to be the seventh, last, digit. But there are many times when the first and second digits are the same J both flagged, making the first character appear to be the extra one. But with either case there are six good digits which can be selected, by programming for the ID. o ') / ., 5 Here were two hardware problems, ID generation, and device control which required a software solution for implementation. In the early development of this system there were random parity problems. Several test programs were written to display these characters and examine them with the binary instructions. There were also structural errors in the data, that is, one of the three digits would be dropped. The design was changed and these problems reduced. (They still occur, infrequently, and are a good indication of some temporary problem in the hardware.) We were still having problems with the EXP CK trigger and decided to use the computer logic of the read instruction. With the able help of our IBM CE this was done, and with considerably less effort than expected. SYSTEM 1ft3 This was now compatible with tape recorder design and the recorder was hooked into the system. o The person collecting data could now work at any time, tE ing the computer or the tape recorder. This was, operationally, a better policy since the computer wasn't tied up for long periods collecting data. The tapes were reduced in the evenings and during the day when the computer wasn't in use. The same software handled the data tapes by using the read paper tape instruction. With the installation of the tape recorder we were also able to reduce binary tapes from a different source. By this time we had learned not to write a full software package before the hardware had evolved into its final form and was debugged. Two short routines were enough to reveal various failures in the hardware. These problems were similar to the other system, lost points and digits, and a new one, a data point in the middle of the ID information. USE OF THESE SYSTEMS The second system was modified for one user to eliminate the use of the disk. He collected a constant 500 points. The collection program was changed to format the points and place them directly in the COMMON area of Fortran. This was a considerable time-saver for his application and he was able to collect about 7 million points in one month. This was the only production work done using either system. Most users wanted their data plotted as soon as possible to determine if they were operating the equipment correctly. Since the Fortran plotting was pretty slow we wrote a short machine language program to read the data and plot it directly from core. As the data 6 is defined as ranging from O~999 no scaling was required. The result was plotting done four times faster than in Fortran. We were now inspired to try and hook an oscilloscope onto the computer for even faster plotting. We even went so far as to develop programs to convert the plot commands into a continuous string of digits corresponding to the pen commands. In this way plotting was done by dumping core, with a pen command coming every lO~ . Manpower shortages prevented the hardware boys installing the scope. The amount of time required in developing utility and debug routines for the hardware was greatly underestimated. Until the hardware worked, a programmer had to be available every time the hardware was tested. One four hour session resulted in the writing of five short machine language programs. In addition an immeasurable number of dump routines were composed and executed at the console typewriter. I do not mean to cast aspersions on the hardware fellows. Their basic design has proven very reliable. It was a lot of furuand very satisfying, to build the system into a usable tool. The point is, both the hardware and software people must work closely together from the very beginning. It is not unreasonable to expect the consulting of some computer oriented person when designing any data system, since the data will eventually reach a computer. Our error was in planning on just writing the software package and not budgeting for time to write the programs to debug the hardware. They could have done it with scopes and a bread-board, but a more reliable "unit" is developed when both sides are involved in the operation. Of the three methods we used, the best, in my opl.nl.on, was clearly the use of the tapes. The procedures the user goes through to set up the source device are usually very time consuming. And he will often be reducing more than one type of data at a time, requiring additional set-up time. When the computer was on-line it would often be used less than 50% of this setMup time and never used fully. Production runs could often be done only in large blocks of time, four or more hours. This forced the user to use the computer at night. And more importantly, the on-line system required someone familiar with the machine and programs to be available at all times. (Typical reason for this was the user would send too much data and clobber the program, but he still wanted to save the data in core. This and similar problems required the presence of a programmer during data collection.) The advantages of the tape system were mostly operational. The user was only competing with other microphotometer users, 1 or 2 people at most and frequently no one, instead of many computer users. The scheduling for the microphotometer was done by the day instead of by the hour as for the computer. The user nee~ed only to know how to run one machine instead of two. And most ----_ .. _..----_. ---_ ... _-------_. __ .. c ",.muwn . ?tIWWf!!! 7 c importantly, more efficient use was made of the computer. During the set-up period the user could use the computer in 5 to 15 minute blocks as required to test his data and operating procedures. During production runs the bad records can be identified in advance so the programs will ignore them, a considerable time saver. Also the reduction of the tapes can be done by a competent computer operator, with the special cases (extra long records) being handled by special programs, without loss of data. These reasons would be less important with a machine capable of handling foreground/backgrourid programs, but cannot be entirely dismissed. Generally speaking, the data would still be placed on an intermediate device such as a disk or tape before reduction. Under such circumstances careful consideration must be given to each method. Cost is not a small factor. For a few collection operations the extra cost of a computer hardware to do the job would be proportionally higher, when compared to individual devices and controllers at each site. But for a large number of such applications, which can be mutliplexed, the cost is reduced for each device, when done with a computer. o Another important consideration is site locations. Transmitting data at high rates and control of collection devices over large distances is still pretty expensive. This tends to force the collection instruments to be located near the computer. When this is impossible then the on-site system using an intermediate device is one solution. One way of evaluating a system is by asking, "Would you do it again?". There is no doubt that we would, and gladly. The one production run mentioned before, with 7 million points collected, would have been impossible to do under the previous system, in less than four months, if at all. We now know, more clearly, what to expect of the basic collection routines, what to expect them to do and what not to have them do. Our new computing equipment will be in use a minimum of five years, probably much longer. Those of us in programming are desperately hoping that the research scientists will completely develop a working system before changes are even discussed. The single biggest factor in extending the development time of these systems was changes in the basic definition of what the system would be. The only advice I would offer to anyone considering doing this type of work with a General Purpose machine is to see it through to the end, and then evaluate the whole system. Even if you have unlimited manpower and time to continue re-doing the same thing, it is much easier to work with a system which has a few, well-defined, operational peculiarities, than to re-educate every user every time he uses the system. o Sacramento Peak Observatory Data Collecti9n System #1 Source Paper Tape Conversion EL 4 , Check . ~'~ (flag) X ,,, . 0 , .J.. " 2 - 2 " 1 - • 0 , Check ., 0 270',.l 3 - 3 " 6 - 4 4401-1 8 7 - 5 3801-1 4 - 6 1 ,. .L 26011 5 - 7 " o - 8 " " I" 7- 9 1320;.. Worst case point 3*440 ~{orst case Prograrr.ming • 1320~ 2640~ o Digits 0 1 2 3 4 5 6 7 8 9 ~:o::-~lal BCD Re7.)resenta:lon 1 2 2' 4. Represen-::al:lOn 1 2 4 8 --"'1"-- 1 0 0 ,.J.. 0 0 .L , + 1 0 0 1 0 0 0 0 1 0 0 0 1 0 1 1 0 0 1..... .... 1 1 1 0 01 1 0 1 , 0 .J.. 1 , 1 1 .J.. 0 0 0 0 , 0 ..11 0 C 1 0 1 1 1 0 0 0 0 1 1 0 0 1 ~- 0 0 0 0 2 l.'i , 0 0 0 0 0 0 1 1 1 1 Pauer Ta~eSChannel . :1PU,cllcme 1 2 i 0 1 0 1 0 1 0 1 0 1 0 0 0 0 0 0 0 0 1 1 1 1 0 0 1 1 Read As: F 0 0 , ..10 1 0 1 1 1 1 1 1 1 1 0 1 2 3 6 7 7; "5 6 7" o f#riit±.w '(Iff T"fT 1i"""!"If"TTf'"'IWWrm "lfHi'#t?tffl f ! I! -~"..'- 0 b f I ~ I I ~ /\ fJ o \..::::I'S.Y" 0:~/ ;-- ~j:-J :::L l i- t II I 0 ~ 1O N E ,t: ~ ! r,.. . ~ . ,j -~~~ - ~~~:~J ~ ~ .-:;: --,-,-- " -~',..-------'------------';'.-. \ >-._ _ _ _ .\1 ~ ~ 71~----- 1 .....s. : ~l~_--____ Jj ______ 1 ~ ~ I -< < a t- -Ii! Counter Start Pulse ------------ [ =--]= ~---.~-""""-~~. DIGITIZF -'. -CIDCK _ _ '"" ••T ...... ~~ .......... "- _ _ _ _,-~~· ... V_" '''=~C;;~~:;~~~~}-count COUNTER er _< ,.a" .. "t...- S to p Pu Is e ,'L: r"-"·-;;;;;fl'~;~~~·-·-]··· . . ------------.•- - - - - - -•. ._;r·-·-·~-' SYNC GENERl~.TOR [ . ·Imrrll~--···-· ,iii. r-"---L----··_·L l~II~~~~II~~~~s········ .. L A~:~~~ER in 1,2,4,8 Code J--- r-·-·--·--·------- PAPER TAPE J .--------<,'.--------------.. "-,,~--~-~~---~'~."~' --rJ INPUT TO 1620 II --_..__._._._ ...._.-._. 1620 II [-'~~E~J~ -RJ ------_._-------_u. _______ .--------------- MAIN FRANE ~t··H '''-. ~ co t) A ~~) o i ,7 1/ .' ( ..... i Catalytic Construction Company Walnut St., Phila., Pat 19102 ~528 - Programs for Inverting a Large Matrix on a Small .~1achine by T. E. Bridge In figure 1, we have plotted, time to invert a matrix, versus the size of the matrix. We have plotted results for two programs, one using partitioning, and the other using sequential files. The same form of test matri~ was used in all cases. Double precision arithmetic (17 digits) was used, 0 Size of Matrix 25 60 120 Partitioning Method (Table 2) Time Minutes RMS Error % 2 0,000 19 .356 115 1.252 Sequential Files (Table 3) Time Minutes RMS Error % 3 29 0.000 213 0,000 29 0.000 231 0.001 Direct Access Files (Tahle 6) Time Minutes ro1S Error % 4 0.000 In this paper, we are presenting three Table 2 Table 3 Table 6 pro~rams: To invert a matrix by partitioning the maximum size is 3520 To invert a matrix using sequential files. The maximum size is 300 To invert a matrix stored on disk. The maximum size is 300. Two other programs also given: ~hat were used in testing the above three programs are Table 4 A program to build a large matrix for testing. Table 5 A program to multiply the test matrix by its invert, and then compare each element with the corresponding element in the unity matrix. The RMS error is calculated and published. o [over please] 0 _._-_.._----------_._--------"._--_._----- - - - - - - - - - - - - - - - - - - - - - - - - 2 - o Description of Partitioning as-Used by 'the 'Program in Table 2 The following formulas, that we use in Table 2 to partition the matrix, are given in "Linear Algebra", by G. Hadley -- Addison-Weekly Publishing Company, 1961 -- on page 109. A large matrix may be partitioned into four smaller matrices. Let-a, b, c, d -- represent four small matrices arranged like this to form a large matrix: b d a c Note that a and d are square matrices; while band c may not be. Let the invert of the above matrix be represented by: Let: e = the A B C D invert of do The following equations may be used to find each partitioned piece of the invert: A (a - bec) B = -Abe C = -ecA D =e ecB :I 0 -1 - The program given in Table 3 uses these equations to find the invert of a large matrix. We had only 5K bytes of storage -- 629 double words -- left over with the partitioning program in core. Since 100 words are required for data handling, we find that the large matrix must be partitioned down to a -- 23 x 23 before it can be inverted. So, four levels of partitioning would be required to invert a -- 352 x 352 -- matrix. The levels of partitioning required are: Matrix size Levels required 23 46 92 a I 2 184 3 352 4 We found that the minimum amount of partitioning gave the shortest amount of run time when using this progrma. In other words, it took 20% longer to invert a 100 x 100 matrix using 4 levels rather than the required 2 levels of partitioning. We don't really know what would be the optimum amount of partitioning on a larger machine. o cQ?a. CLEARPRINT PAPER CO. 7 8 9 TCL:~.7'R/" 10 f-,"TI No. T323. LOGARITHMIC: 2', BY 2 3',·INCH CYCLES 3 2 ---.;.....-"._- 4 ·1····'· ........-.----.......--- III 1'" .I : I i I -+=\-, I _.-! . . 1.... ! +····:·--t-"-t ! 1 I ! I---I'--r-+ : . .t '- ... -+.. " l l I • I i i' ~ I I l I l ! I~~TI~ 1A91 f . I , 'I -~ -... ". -' ti . . . .• .. -1 ."- -.. t .... t. j !' I . I I I f =---t--=;~ 4 r·I I I "" I 1 ............ - - - - - + - I I II! , ' I ~ I I 1 I ;, I -+- ---1- ---.. --~. --.--.. -~.--~--. +-- I ~=R=-'~ --'~J--~r! I! I--±+t+~~~~3 5 6 7 8 9 / 2 3 4 -L.__ I ..• 9 T-J--f-+-+---- . _. _ ._.____ Icujm; L_1 uLJ-! t· 1 mwlili O 5 PRfNTE.D IN U.S.A. ON CLEARPRINT TECHNICAL PAPER NO. IOOOH I . _ _ _ _ .• __ . _ _ . ~ _ _ _ _.. Ii . --I-t-; f I ~ ,---~=r+-++-Lt - t·· f i ..•..... ,1 f ; .... 'r i 1 ' t I ! I -- .. ---~".-------.--4- ! i , .f - -+_.. _._-+ ..._--+.. .1 _____....___.Li ..,.. "" i' ... , 50' .h-r: 'WI" J TABLE 1 LISTING OF PROGRAM TliE FOLLOWING PRUGRAM IS INCLUDED ONLY TO TEACH THE METHUD OF OPERATION IN IH~ PROGRAMS LISTED IN TA~LES 2 AND 3 US~D C THIS PRUGkAM WIll SOLVE C \11 N = i''i + 1 = i, N = X(K,K) F DO 1 J= K,Nl 3 X(K,J)= X(K,J) / F = 2 X(I,J)= 001~ 1,N 2,1,2 0016 X«(,J) - X(K,J) 1 C0 I\J T I i'-J Ut: END * 0011 X([,K) 0018 0019 0020 STATEMENT '- AbCVE IS THE HeART UF THE PROGRAM. IT JS IN .THE INNER Leop AND [S EXECUTED N ** 3 TIM~S ~~UATIUN K ll~ STA1 EMENT IN 0023 0025 :; i , fVERY TERM IN THE KEY EQUATION IS ~ULTIPLIEC BY THE .~ SUr) TRAe T[0 FRU('1 TH t: COR k ESP UNO I NGTE RMIN EQUA TIC N I THIS WILL G[ Nt RAlE A l F KU I;'-J COL UM,'~ K. cAe H S~ [ EP 0 F r HEM ATk I X wILL Gt.: NERA TEA eeL Urv: r,~ 0 F l r ,( 0 S I;~ CGL U Mi ~ (K) EXC [ P T FeR THE TERfv'i UN THE UIAGCNAL WHICH WILL BE 1.0 . BY PERFURMI~G A SE~[ES JF VAllD UPE~AT'ONS ( NOT CHANGl~GT~tE E~LALITY) WE GENE~ATE THF UNITY MATRIX. THE ANS~ERS WILL THEN APPEAR IN THE LAST COLUMN • 2) 0021 0022 0024 lS THE KEY EQUATION THIS IS CLNf o~ oU~' 0008 0009 0010 0011 0012 0013 0014 SIMULTANEOUS EQUATIONS 00 1 K 00 1 I IF (I-K) 0003 0004 0005 STATl~ENT A(\~ C x ( I , K) I 0026 0028 002Y 0030 0031 g~ o~ 0035 0036 0037 TABLE LISTING OF PROGRAM T~" INVE~T A LARGE MATRIX STORED ON DISK USING PARTITIONING 2 IlaTION CATAL ASE BJPL$04,S II EXEC FOK1RAN COMMON N3, N4, N5, N6,JIM,NM,IT,IS,NJ,NP,NC,NX C N3 IS A wO~K FILE ON DISC C N4 IS A TEMPORARY SEQUENTIAL ~ILE C N~ IS A SEQUENTIAL FILl: FOR STURING MEMBER INFORMATION C N6 IS A OISC FILE IN WHICH MATRIX IS STORED C JIM IS THE SIZE uF THt SMALL MOSAIC OF WHICH THE BIG MATRIX IS C NM IS THE NUMBER O~ MEMeEK$ C IT IS fILE TO ~HICt1 PRlJGKAM WILL RETUR.'J C IS WILL CAUS~ DIAGNUSTICS TO BE PRINTED C NP IS PAGE NU NC IS NO or COLUMNS IN HIG MATKIX C NX IS ;~COF CCLU~jN~ IN CUMPRESSED t-1ATRIX DEFINE fILE 12(160Q,200,U,I2) DEFH-Jc FILE 13( 8()O,200,U,13) OUUBLL PRECISION X (S2Y) IF(NX '3) 1,1,2 1 CALL ISSl ( NX, 1,X) J CALL LINK (O~) 2 IF(NX-4b) 4,4,? 4 CALL 13b11 (NX,l,X) GO TO 3 5 IF(NX-92 ) 6,6,7 CALL T~~12(~X,I,X) O IF(NX-ld4) GU TU 3 7 8 CAL L 1 B l» 1 3 GO T (j S,e,g (I-.l X , 1 , x) 3 9 I F ( NX - ~ ~ 2) 1 0, 10, 1 1 10 CAll TBiI4(NX,1,X) GU TO 3 (3,100) CALL EXIT 100 FURMAT ( 2GH MATKIX 11 WI{ITE TOO LARGE Ei"'40 1* TEB II EXEC FORtRAN SUBROUTINE' TK$l(~~,NC, X) DOUBL~ PRECISIUN X(23,23),~ COMMUr~ 1>.43, N4, N5, N6, ;\JX 13 ::: 1 NP ::: j"",JC + i'~ 1 I ::: 1,1'1 K ::: NC + I - 1 CALL DATA (1,1,X,13, 13 13 ::: 13 + 23 DO 1 K ::: 1,N DO 13 IF (X(K,K)2,1,2 F ::: 1.001 X(K,K) X(K,K) DO 3 J ::: .101 ::: ,1, N NC, NP, K) ~ADE 0040 0041 0042 0043 0044 0045 0046 0047 0048 0049 0050 0051 0052 0053 0054 0055 0056 0057 0058 0059 0060 0061 0062 0063 0064 006':> 0066 0067 0068 0069 0070 0071 0072 0073 0074 0075 0076 0077 0078 0079 0080 0081 0082 008.3 0084 0085 0086 0087 0088 0089 0090 0091 0092 0093 0094 0095 &?3 * 3 X(K,J) = X(K,J) F PO, 1 I :=lJ_"!~~_",«".. -~","".,~, IF (I -K) 4, 1 ,4 4 F '= X'-'_',K" X ( I ,K) = o. DO 0096 .' .,....... , " .. «','. ..... 13 .' * = - - -.. ... .. .,ort'J ' 0101 ----0102--'-.~_v_ . ____.: . . 0103 ~· ~. = 13 + 23 0101 -, -(f1"08----·0109 ._-_.- '"'--"~"'--Ol fa-- 0111 '--0'11'2 -.---.-, 0113 TEB --0114------' II EXEC FORTRAN SUBROUTINE DATA( JIM, JOE, A, 13, NRl, NR2, NC) DOUBLE PRECISION A(529) , l(IOO) COMMON N3, N4, N5, N6 IF ( N~) 3 I , 30 ,31 30 WRITE(3,32) JIM, JOE, 13, NR1, NR2, NC 31 CONTINUE 32 FORMAT (/618/) NF = N6 NB 0104 0105 . "0 fO-6-----" RETURN END 1* 0115 0116 0111 oiItf'------ ------- . . -" ..... ' 0119 0'1'20 0121 '~--·-o =0 ~J1s 0126 0121 .' 'Crf2 8 -- ....-. 0129 0130' LE O1.32-·~· MOO(NRB, 100) + 1 ~~OC(NRE, 100) -+ 0133 '----'01 3 4_~_"-N" 0135 1 ME I~K + NRE/fbo+' 1 MB = NK + NR8/100 + 1 DO 33 M = MB,ME lS = 1 IF 11 12 13 14 6 10 7 = , '-'0-[36 0137 100 IF (M-MS') 11,11,12 LS= LB IF(M-ME) 14,13,13 LF = LE READ (NF'M) I GO TO (6, 7) ,J't M DO 10 L = lS, IF 'A( I ') Lfr'r -"_-_"-'-"'" . I = I + 1 GO TO 33 00 15 l = LS, IF l ([) =' ATll' = 15 1·= 1+ 1 ~ 0131 I = 13 = = = 122---'-' 0123 GO TO (1,2,3), JOE 3 NB = 200 2 NF = N3 1 CONT 1 l.. UE NK = NC*4-4 NRB = NRI -1 + NB NRE = NR2 - I + Nfl LB ....Q9 9 1.".,_,,___ -------~ F 00 14 I It N K = NC 1 + 1 CALL DATA (, 2 ... A,X, 13, NC, NP, K) 14 13 .. ·0098 DO 1 J = 1,N X.(I,J)= XlI,J) - X(K,J) 1 CONTINUE NC.l = NC-l NP NC & N -1 = =1 ._.._ ....._ ...' ____..._ .... . ---'--01'3 a-----' 0139 ---'-~ ·-'---·-·-OT4'(}·-~· ..." 0141 ~--- .. ---~---- 0143 .-'0-144 ---- i .-.- . .-.-.-.-.'-. --..-~--.-g~:~ ---'-~-----' .. 0147 ~1Jl-48--- .---,---.. ~,-g(l---,0151 I I EntIre WRITE(NF'M) Z 33 = 13, J END TEB II EXEC FORTRAN SUBROuTINE TG~11 (N,NA,X) DOUBLE PRtCISION X (23,23) = CALL T8$ltNL, Ne, X ) CAL L 1 B ~ 7 ( I\J , :~ .A , X) CALL TR)l(NU, NA, X) CALL TB'8(N,NA,X) RETUR~; EI'-JD 1* TEB II EXEC FURl RAN S U 131<.0 UTI NET B i» 7 ( N , NA., X ) DOUBLb PRECISluN X(176,3) NE = NA ~ ;~ NL = I'~ I 2NU = i\ - Nl j\JO = r~A f. NU NUl = NIJ - 1 .-J2 ;: B C 1 * = 1 DO 3 K ;: NO, I'J E olJ 1 l DU 2 J .-: 1, I\j L ;: 1, t\J U 1 X(l,3) ;: 0.00 o IN (2) CAll UATA (l,l,X,177,ND,NE,K) BIN (1) CAll GATA (l,l,X,l,i'.. A,j~Dl,~+ j\lq~ DO 2 I = 1, NU X(J,2) 2 X(I,3) .-: XCI,j) f. X(I,l) (3) IN w2 C C * C 'CALL DAfA (2,2,X,353,1,NU,Kl) 3 Kl = Kl + 1 A ;: A - W2 * C DO 6 K = NA,NDI C C A IN (3) CALL OATA ( C IN (2) C. 1,1,X,3~3,NA, NOl, K) CALL DATA (l,l,X,177,NO,NE, K ) DO 5 J W2 IN ;: 1,NU DO 5 ;: (1) CALL DATA ( C 0 5 I X(I,3) = ".""j" rti":*t"#mt!IHMtt'h"~I::JJ 1,2,X,l,1,~U,J) 1, NU X(I,J) - X(J,2) 0154 0155 0156 0157 0158 0159 0160 0161 0162 0163 i'J L ;: i'..J 12 NU f'-J NL NO ;: ;\JA + NlJ Kl r% "f""·" rr-V"·" Mriti .. "in W""" ttl> f" f "t" 0153 1* o ." 0152 CUNTII~Uf IF(N5) 42,41,42 4C)1 J = [3 + NR2 - NRl WRITE (3,100) tAlK) , K 100 FORMAT ( IPI0013.6) 42 R~TURi'~ c ill * ¥'J,~~ 0164 0165 0166 0167 0168 0169 0170 0171 0172 0173 0174 0175 0176 0177 01-'8 0179 0180 0181 0182 0183 0184 0185 0189 0186 0187 0188 0190 0191 0192 0193 0194 0195 0196 0197 0198 0199 0200 0201 0202 0203 0204 0205 0206 020 I C (3) IN A 0208 0209 0210 0211 6 CALL DATA (2,l,X,353,NA,ND1, K KETURt-4 END g~ TEB 1* II EXEC FURTRAN SUBROUTINE TB18 (N,NA,X) DOUBLE PRECISION X(176,3) NA1 = NA - 1 NE ('~L NU = = = i~ A + i'i/2 i~ ;\J 0214 0215 0216 1 - 0217 021H NL - 0219 NO = j\JA + NU NOl = NO - 1 B -A w2 K1 1 * = C = DO 3 K = NO, t'~ E OU 1 L = l,NU 1 X(L,3) = 0.00 C W2 C IN (2) CAL L DO 2 U A T A (1, 2 , X , 1 7 7 , 1 , i'J U , K 1 ) J 1,NU A IN (1) = CALL OAlA(l,l,X,I,NA,NCI, J+ ;~Al) DO 2 I = 1, NU 2 X(I,3) = X(I,3) - X( 1,1) * X(J,Z) C (3) IN B CALL DATA (2, 1,X, 3'):1, NA, Nul, = 3 Kl K1 W2 = u K1 = 1 C 07 C Me Nt\, = l,NU = o. DO DO 5 L C + 1 = DO 4 K 5 * X ( L, 3) K I~Dl 0239 C IN (2) CALL OATA (1, 1,X, DO 6 J = 1,NL 177,~O, NE, K ) C O I N (1) CALL DATA (l,l,X,l,ND,NE, J + N01) 00 6 = 1, I = 6 X(I,3) C ( 3) I 1\-.; ~~ NL X(I,3) + X( I,l} * X(J,2) 2 CALL OArA (2,L,X,J53,l,NL, Kl) 4 K1 C C = =- WZ UO 71\, DU 8 l 8 X(L,3) C A IN C + 1 Kl = = = * A NA, ;~Cl 1,NL O.DO (2) C 0240 0241 0242 0243 0244 0245 0246 0247 0248 0249 0250 0251 0252 0253 0254 0255 0256 CALL DATA (1,1,X,177,NA,NDl, K) DO 9 J = 1,NU 0257 0258 W2 0259 IN (1) CALL DAfA (1,2,X,1,1,NL,J) 9 0220 0221 0222 0223 0224 0225 0226 0227 0228 0229 0230 0231 0232 0233 0234 0235 0236 00 9 I X(I,3) = = (3) C Ir~ 1,NL X(I,..;) 0260 0261 - X(I,I) ~( X(J,2) D; !"II C CO... 0 = D - W~ * 0 7 CALL OATA (2,1,X,353,ND, DU 10 K = NO, NE N~t K) DIN (3) C CALL UATA (1,I,X,353,NO, NE, K ) B IN (2) CALL JATA (1,1,X,117,NA,ND1, K) C W2 = 00 11 J IN 1,NU (I) CALL DATA (1,2,X,l,l,NU,J UO 11 I = 1,i\lL 11 X(I,3) = X(I,3) - X(I,l) * X(J,2, C (3) I~ 0 10 CALL DATA RET UR'i END 1* TEB II EXEC FURl RAN (2,1,X,~53, NO, NE, K TBi14 (N,NA,X) DOUBLE PK[CI~IUN X (25,25) NL = \j/2 NU = ;~ - NL SUBRUUTIN~ ND = i~A + NLJ CALL fB$13(NL,NC,X) CALL TB$7(N, NA, X) CALL IBi13(NU,NA, X) CALL JB~8(N,NA,X) KETURr-J END I TEB II eXEC FURl RAN SUBRUUTINe T~h13 (N,NA,X) DOUBLE PKfCISIUN X (25,25) NL = N/2 O NU = NO = CALL CALL CALL CALL i~ - ;'4L NA + NU TB'12(NL,NC,X) IB$7(N, ~A, X) IB~12(~U,NA, X) T818(N,NA,X) RE JURi'. END TEB II t:XEC FGRTRAN SUBROI)TINE TI31112 (N,NA,X) DOUBLE PRECISION x (25,25) NL = N/2 NU = N - ~L NO = i\JA + NU CALL TB$ll(NL,NO,X) CALL TB.~7(N, ,'4A, X) CALL TOill(NU,NA, X) CALL TBi8(N,NA,X) RETURN 1* , EI'JD 0 1* fEB awe n rVTIIu::::rrnj.1 0264 0265 0266 0267 0268 0269 0210 0271 0212 0213 0274 0215 027b ~ 0211 0218 0279 0280 0281 0282 0283 0284 0285 0286 0281 0288 0289 0290 0291 0292 0293 0294 0295 0296 0291 0298 0299 0300 0301 0302 0303 0304 0305 0306 0301 0308 0309 0310 0311 0312 0313 0314 0315 0316 0317 0318 0319 c2 ?? IJ III{ TABLE LISTING OF PROGRAM 3 TO IN~ERT A MATRIX STORED ON TAPE II J08 BJPL:lt II OPTION CATAl PHASE BJPL$13,S II eXEC FORTRAN C BJPl$ PROGRAM TO INVERT UP TO A 300 X 3CO MATRIX STORED CULUMNwISE IN FILE 12 • FOUR RECORDS ARE USED FOR EACH COLUMN COMMO~ N3, N4, NS, N6,MIJ,NM,IT,IS,NJ,NP,NZ,NC OEFINf FILE 12(1600,200,U,IN2) DOUBLE PRECISIUN F,G DOUBl~ PRECISION C(300), 0(300,2), 01(300) EQUIVALENCE (01(1), 0(1,1» DIMtNSION NF(Z) NF(l) = 4 NF ( 2) = 5 M 1 N 2 OU 14 J = = J4 = = l,NC J*4 REAO(N6 t J4-3) (C(l), l= 1,100) REAO(N6'J4-2) (C(l), L=lUl,200) REAO(f'i6 t J4-1) (C(l), L=201,30U) 14 WRITE (4) C REWIND 4 READ (4) REW Ir-JU 4 (Cl(l), l = I,NC) Du 8 K = 1,NC F = O(K,M) IF (F) 4,15,4 15 DO 2 J = 1,NC KEAD (NF(M» (C(l) , l GU TO 19 = ::: 1,NC l.CO READ (NF(M» GU TO 22 16 CONT Ii\U E READ (NF(~) (C(l), l ::: 1,NC) IF (NS) 23,22,22 £:3 WRITE(3,11) J,(C{I), I = 1,I~C) 22 C ONT I f'JU E = C(K) C(K) G ::: C(K) DU 1 I ::: * F 1, l~ C IF(I-K) 3,1,3 3 C(I) = C(I) - O(I,M) 1 CONT II'-lUI: 19 IF (J-K-1) 20,5,20 5 DC 7 L = 1,NC 7 O(L,N) = 20 CONT I !\U( ell) * 0330 0331 0332 0333 0334 0335 0336 0331 0338 0339 0340 0341 0342 0343 0344 0345 0346 0347 0348 0349 g~Q l,NC) 21 CtL) ::: 0.C0 C(K) oM 0350 16,17,16 = g~; 0351 0352 4 F- = 1. cc, I F 00 2 J = 1,1\ C IF (K-J) 11 00 21 L 0324 0325 0326 035~ 0356 0357 0358 0359 0360 0361 0362 0363 0364 0365 0366 0367 0368 036g 0370 0371 0372 0373 G 0314 0375 0376 0317 gD dtt'f j\iiitEff tfrill" BNt ""tiiFttti?HfC3b"bbbt trl'ltttttW*itiif?BiiWWfflffBRr . [ i'tXnr-fFifiHtitiWriWfWf "3f689fWf*E "" ... "" .. r WWFrffWhwrr' "TIT W'WftNtWi¥:iirlt1ll!t1'iWP2rr CONT l;'~UE wKITE (NF(N» 2 CONTINUE (C(l), L = 1,NC) REWING ') =M M = r'J N = L (C(L), L = 1,NC) J 4 - 3 ) ( C ( L ), L = i\~F(M» WkiT E (1\16' WRITE (~6' J4-2)(C(L), J4-1)(C(L), WRITE (.\J6' 30 CUNT P~UE CALL LINK (05) END 1* TEB INCLUDE uVERLAY II EXEC LNKlCT o I.". . "PI • I 0389 OJ 30 J = 1, ;~c J4 = J ", 4 ( • 0388 l REAl) ".. . . . . 0385 0386 0387 KEWIND 4 8 -g '",."W'TFP-WW2stibiMIiiI 0380 0381 0382 0383 0384 IF(N5) 9,10,10 (3,11) J, (C(I), 1= l,NC) 11 FORMAl (151 (lX,lP10012.5» 9 WRITE 0 .,10 I L l = = 1,100) 101,200) 201,300) 0390 0391 0392 0"39j 0394 0395 0396 0397 0398 0399 0400 0401 0402 TAB l E 4 l I 5) TIN G 0 F PRO GRAM USE 0 'T U G ENE RAT E 1 EST MAT R I X II UPTION CATAL PHASEBJPl$lO,S II EXEC FORTRAN C C C C C C C C C C = N3 N6 = = O.UO 13 12 READ (1,1000) N5,IS,NX,(A(K,I) , K 1000 FORMAf(ZI2, [4, IGA4) WRITE (3,1000) NS, IS, L4 = NX I 100 & 1 DO 1 K 00 2 L = LK K KL = L A(L,l) IF * * = (L - K) 6 A(L,1) GO TU 2 3 A(L,l) 2 = = 00411 410 409 COMMON N3, N4, N5, N6,JIM,NM,IT,lS,NJ,NP,NC,NX N3 IS A WOKK FILE UN DISC N4 IS A TE~PORA~Y SEQUENTIAL FILE NS IS A SEQUENTIAL FILE FOR STURING MEMBER INFORMATIUN N6 IS A DISC FILE IN WHICH MATRIX IS STORED NM IS THE NUMB~R OF MEMBEKS IT IS FILE ro WHICH PROGRAM wILL RETURN IS WILL CAUSE DIAGNOSTICS TO BE PRINTED NP IS PAGE NU NC 15 NO OF CCLUMNS IN HIG MAT~IX NX I 5 l'~ 0 0 f COL UMNSIN COl'" PRE SSE 0 t-1 A TR I X OEFINt FILE 12(16nO,20Q,U,I2) DUUBLE PRECISION A(100,4) DU 10 K = 1,400 10 A(K,l) 0405 0406 0401 0408 i~X, = 1,16) (A(K,l), K = 1,16) l,NX 1,NX 0412 0413 0414 0415 0416 0417 0418 0419 0420 0421 0422 0423 0424 0425 0426 0427 0428 0429 0430 0431 0432 L 0433 NX - NX & K 434 435 0-0436 r~ X - lK f. fJ X t. 1 3, 6 , 2 = A(L,l) = KL + 1 * 0437 0438 0439 0440 0441 10. CONTIi"UE = K4 4*K - 4 lHJ 4 L = 1,L4 4 WRITE (N6' K4f.l) (A(I,L) , I;: 1,100) IF (1\4'» 5,5,1 5 WRITE (3,l001) K,{ A(I,l) , 1= 1,NX) 1 COi'-fTIhUE Nl'v\ = tOICT I (viE (:.) WRITE (3,1001) NM 0442 0443 0444 044'j 0446 0447 0448 0449 0450 0451 0452 0453 0454 CALL LINK (IS) 1001 FURMAfI/Ilb/( 2X,lOFI0.1» END 1* II TEB EXEC ASSEMHLY MCTIME 1* TEB STAKT 0 US Ii'JG *, 15 0455 GETIME BINAKY 0456 lR (1,1 BR END 14 0457 0458 4'i?459 4 60 U -If·j·IiE-i····);· 'e"rS''''Y'''" t· .tW:tittt.M"f TABLE 5 OF PROGRAM USED'TO CALCULATE INVERTING A TEST MATRIX lI~TING RMS ERROR CATAL '-'PHASE BJPl$05,S II eXEC fORTRAN COMMON N3, N4, N~, N6,JIM,NM,IT,IS,NJ,NP,NC,NX C N3 IS A WOKK FILE ON DISC N4 IS A TEMPORA~Y SEQUENTIAL FILE C C N5 IS A SEQUENTIAL FILE FOR 5TORING MEMBER INFORMATION C Nb IS A DISC FILE IN WHICH MATRIX IS STORED C NM IS THE NUMBER OF MEMdERS C IT [S FILE TO WhICh PkUGRAM ~IlL KEf URN C IS WILL CAUSE CIAGNOSTICS TU UE PRINTED C NP IS PAGE ~O C NC IS NO CF CULUM~S IN 3lG MATKIX C NX IS NO Of COLUMNS IN COMPR~SSED MATRIX DEFINE FILE 12(lbOQ,2JO,U,I2) DOUBLE PRECISIUN A(lOJ,4) 1033 = NM =(~M f'-1 C TIM [ ( U) + 30) I i"l M - 60 wRITE (3,1J33) I\lM , NX FLJRfliAT ( 11, 2?H i"llIJUfES TO Ii\lVEkf SIZE SUM = O. = L4 ;~ X I 100 + 1 = IfNI( K*4 - 4 L = l,L4 OU 1 K K4 = DO ? READ( NotK4 + L)( A(I,L), 1= 1,NX) IF 15,15,14 (N':» 15 WI{ITE (3,10.1) K, (AtI,l), 1= 1,NX) (2X,lPI0012.4)) 103 FORMAl (/1101 14 CUNTINUE 00 1 I = 1,Nx E = o. DG 2 J 01 J -= * 2 E = IF(I-K) 1,3,1 3 E = E- 1. 1 SuM = SU~ + E E = S CR1 * 050':) 0506 0507 O[J 0508 * E I ,'~ x ) * 0509 0510 0511 1 (I 0 • E 0512 CALL LINK (10) ( 0495 0496 0491 0498 0504 (S U MIN X (3,100) 100 FURMAT 0493 0494 0503 NX + J +1 E + A(J,l) WRITE 047~ 0476 0477 0478 0479 0480 0481 0482 0483 0484 0485 0486 0487 0488 0489 0490 0491 0492 0500 0501 0502 [ + 1 (I-J) 4,6,2 OIJ .; Q[J * 10. GO TO 2 4 OIJ .; NX*l - I) 04t 046 046 047 041 047, 041: 047· 0499 = 1 t r"x NX J - ;'.. X + IF 6 ,15 04~ 04t I~OPTION NM WHEN 18H IU-1S E hiD TEB 1* II EXEC ASSlMl:3LY eRROR, PC .; , Fa.3) 0513 0514 0515 0516 STAKT 0 I't\ USIi\JG *,15 ~ GETIME OINAKY 0517 0518 0519 LR 0520 ~CTI~E v,l BR 14 END TEB I[\JClUDE UVERLAY EXEC LNKEDT !III ~ 0521 0522 0523 O~ o~J5 I: i TABLt I'~B I ,"PT PHASE 6 LISTING OF THE SHORTEST PROGRAM THAT I COULD WRITE TO INVERT A MATRIX STORED ON DISC. BJPL$ ION CATAL BJPL:i»14,S II EXEC FORTRAN THIS IS SHORTEST PKUGRAM THAT I COULD WRITE TO INVERT MATRIX STGREO ON DISC COMMON N3, N4, N5, N6,JIM,NM,lT,IS,NJ,NP,NC,NX C C DEFINE:: FILE 12( 1600, 200, U , 12 ) DOUBLe PRECISION 1(100,3), 0(100,3), Z(1CO.3), F,G = L4 (NX-l) , lOG + 1 DU 1 L 1,300 = 1 l(L,l)= D.DO = 00 2 1 K 1, j\j X K4 .-\*4 -4 DU 2 I-j :: l , L 4 2 REAOIN6' K4 + ~) = F = l.CO I Z(K,l) Du 3 t-\ = = (O(L,M) , L = 1,100) O(K,l) 1.00 1, L 4 3 WKITE(Nb' K4 + M) ( Z(L,M) , L= 1,100) l(K,I) DC 21 J = = 0.00 = l,NX J4 J*4 - 4 DLJ 4 !"i = 1,l4 4 READ (~6' J4 + M) ( T ( L , ~I I(K,I) = T(K,l) * F = G T(K,1) 00 22 I = j\t\ = L * G 1, L 4 5 WRITE( N6'J4 + M) 2 1 CON T I ~,; UE CALL LII'lK END = 1,1(0) 1,j~X IF (I-K) 23,Zt,23 23 T(I,I) = 1(1,1) - C(I,l) 2.2 CONT Ir'JUE DU 5 ), (T(L,M), l = 1,100) 0528 0529 0530 0531 0532 0533 0534 0535 0536 0537 0538 0539 0540 0541 0542 0543 0544 0545 0546 0547 0548 0549 0550 0551 0552 0553 0554 0555 0556 0551 0558 0559 0560 0561 0562 0563 0564 (O~) TEB INCLUUE UVERLAY II EXEC LNKLCr 1* fEB 1* TYPICAL DATA FUR RUNNING PROGRAM 0565 0566 0567 0568 0569 0570 0571 0572 0573 1/ EXEC 1 4 113 I1J 1* It BJPL$lU 60 X 60 ~ATRIX INVERSION BY PARTITIONING 25 X 25 MATRIX INVERSIUN BY BY SEQUENTIAL FILE 60 X bO MATRIX INVERSION BY BY SE~UENrIAL FILE 0574 0575 0576 0577 0578 0579 ,I ./ " /' , / t{ ) I o COMPUTER REGISTRATION AT CHICO STATE COLLEGE by Neil C. McIntyre, Jr. ,,("I'I l~Ji Faculty, Computer Sciences Chico State College G c COMPUTER REGISTRATION AT CHICO STATE COLLEGE Since the inception of computerized registration at Chico State College in 1965, the College has received numerous inquiries from other colleges as to how our system works and how it might be modified and implemented for other schools and other hardware configurations. Since no general computer-oriented overview of our system has been undertaken previously, this paper is an attempt to describe the salient features of what we at Chico State College believe to be the only successful large-scale genuinely computerized registration system. Like most California colleges, Chico State has recently () experienced enormous growth. From an enrollment of 2,200 full-time equivalent students in 1961, the College has grown to 6,738 FTE this fall. Such rapid growth (about 15% for several years), with no abatement in sight for the near future, demanded that the College implement some form of automated registration. Perhaps the best overview of the impact of computer registration at Chico State can be gleaned from a description of the process as executed under essentially a manual system and a description of the corresponding automated systems. Prior to 1965, scheduling of students into the many sections of each course was effected by what we refer to as o "arena" registration: on the Thursday, Friday, and Saturday preceding the first day of classes, the college's gymnasium 1 2 was equipped for mass student registration. processing equipment. o To register in the College, a student, having previously applied to and been admitted to the College or continuing from the previous semester in good standing, would be given a packet of punched cards which included a clearance card, study list, housing card, and the like. At the hour appointed for his class level and the initial letter of his last name, the student would proceed to the gymnasium. There he would wait, seemingly interminably, to be admitted to the arena. Inside, two major functions were performed--first, a student would select the classes he desired, proceed to the proper table, and, if the class he desired were not full, would be given an IBM card representing the class. If the student were exceptionally lucky, all his desired class sections would be open. If he were extremely unlucky, a class would close during the class-card gathering process and he would be forced to return his unwanted class cards, re-work his schedule with the help of an academic adviser, and start the class-card gathering process again. When he had all the desired class cards, he would proceed to the second phase: paying of fees. While the lines to pay fees were shorter and the time less than the waits to be admitted to the gymnasium and to receive class cards, the student was understandably grouchy after spending what was ordinarily about five hours in the o registration process. --- ,1 -ii: For some time, record-keeping functions were assisted by unit-record data 1 - ------------- o It can readily be seen that the process of registration by the arena method for 6,700 FTE will require more time and facilities than for 2,200 FTE: something had to be done, for our time and facilities were simply running out. During the arena years, the class schedule was prepared entirely by hand, typed, photo-reduced, and printed. The secretary to the Vice-President for Academic Affairs would invariably spend the entire Christmas vacation period and the same amount of time during the summer manually preparing a list of all rooms and the classes to be taught therein during the upcoming semester. Inevitably, conflicts, empty rooms, and classes without rooms would appear which would frequently not be resolved until after classes began. () As the College grew, physical plant utilization therefore dropped and confusion was the order of the day. students would meet with an academic adviser in their major subject area and, together, the student and his adviser would prepare a program planning sheet for the student's use at arena registration. By 1965, this process could not be completed conveniently on the Monday, Tuesday, and Wednesday preceding registration allotted to the advising procedure. Moreover, all of the necessary but often irritating paraphenalia of student records, such as class lists, packet cards, grade lists, grade reports, and the like could not be conveniently prepared in the allotted time. o Chico State's computerized system revolves around three distinct but interdependent systems: schedule preparation, , ",' M"":U,, ,2,. 1"""·,·"k",M""",g;,,,x",;::.x,,,,,.g$l4,Ji';;;;,tc",'~rnm4;Mi;;;,,..niTik1!,;;;W.J;·M:r&:::·"t,1IlJlM,W:;;:;U;:;:A!£!il1iG11':;&.W...iWTW student scheduling, and student record processing. One of the major effects of computerized registration has been the expanded time schedule for the entire process. o Using the arena system, the major functions were performed from just before Christmas until mid-February for the spring semester, and from early August to late September for the fall semester. Computerized registration has so drastically altered the scheme of things that registration processes are underway at all times during the year. Chico State's registration process now begins with the computer center preparing, based on history and enrollment projections, a schedule request worksheet which is sent to the various academic department heads for their use in planning their course offerings for the upcoming semester. The schools and divisions of the College receive these o worksheets shortly after the beginning of the preceding semester. Onto the worksheets tbe department heads write the requisite variable information, such as instructor number, class meeting times, building and room codes, and so forth. The completed worksheets are returned to the computer center for keypunching and verifying. The data are then submitted to the first ina series of major programs. This first program checks the schedule request against master lists of courses, rooms, instructors, valid times, etc., and produces listings of errors, omissions, and inconsistencies. The error listings are returned, together with a list of classes vying for the same room at the same --.---.~-- --- - - - - - .. -.-----~--- .. - " - .. ---- ... -------~---- 0, -.----------------- .. 5 hour, to the department heads for thier corrections. The entire class schedule is stored on a disk pack once, and, as corrections, additions, and deletions are made to the schedule, additional error checks are performed. During the first week of November for the upcoming spring semester and during the third week in April for the fall semester, a computer program prints a copy of the tenative class schedule containing class number, department name, department course number, course title, number of units of credit, instructor names, and times. Building and room are not printed in the tenative schedule. The schedule is then sent to a print shop for photo-reduction and insertion in every copy of the next issue of the Wildcat, the free o student newspaper. The week following publication in the Wildcat is designated as "pre-registration" week. Each student meets with his adviser and prepares the successor to the program planning sheet. On the request form the student lists each class he desires, possbile alternates to it, the number of minimum and maximum units he will accept, states whether or not he will take any section of the course in order to get it, states any time restrictions he has, and similar information. The program planning sheets are then sent to the computer center for keypunching and verifying. o ~.jjl;lh!fu_<@!}__ &l.!!:!", . .¢L.i!!O!!U·,,!l"",4··!E··_··.24Ii4_~.i From the student request cards, a tabulation of the number of students requesting each course is prepared and _k'"'_ _ .f:i!."""'!\3'+"'E!'.~'.~,.$_,_, ... _• .,_h#-4I~P5.¥Pi'#ii"l'i'l!,,,,F.!!!._a ..',i...._.£bHil,J¥&!III!I,III\\lil ..i\.IIiI'!!iIiI!I/\¢..lIIIIId_ .... _4442"""' .._. _ _ _~+."~_F~,,,"""'.'-Pi:'l'l'i".t'¥.¥~',m"#1l:1i'diliG_Q,"U;;_Lut&_tJ~t&I_"_llLmGl_.m""",""""",,,".,_.iliI:c:wwaaaazza ........._ .....---------~ --~-- .... -~--'-" _ .. ~~-"'--'''-''''-- 6 sent to academic department heads and college administrators. Based on demands for each course, departments may revise the schedule as required. During all phases of the schedule preparation, updated room lists, conflict lists, and lists of available space are frequently prepared, thus providing a great degree of flexibility and control over physical plant utilization. As an example, virtually no room conflicts now exist the day classes begin, whereas many of the classes had no room or met in a room occupied by another class before computer registration began. When it is determined that the schedule is final (usually about four weeks before the beginning of the semester), computer registration is actually run. Most registration programs for relatively large-scale use are "computer-assisted." Emphasis is principally on relieving facility and personnel problems of scheduling rather than on giving the student more choice and greater convenience in class selection. In this respect, our registration program is, I believe, unique, for it permits the student great latitude in course selection, time limitations, in fact, all of the advantages of ideal class scheduling with few disadvantages. In the spring of 1965, two Chico state College students were commissioned to determine if a computer program could be written for the 1620 to enable registration by computer. The students determined that a program could be written by writing one! written for, and still operating on (in slightly ---_."_ .. " - , , ... "---,, -'-"~---'--'''--'----'' .. _- o 7 c modified form) a 20K card/disk 1620, the Chico state College registration program, as we call it, should actually be called a "scheduling" program. The registration program takes into account both student requests and the state of the schedule at the moment a student is processed. The process of scheduling is markedly similar to arena registration, but the computer does all of the work frustrating to students: in accordance with the student's requests, the program tries as many as 15,000 possible schedules before determining that it cannot find a workable schedule within the student- and college-applied restrictions. Where the student may spend upwards of three hours to find any workable schedule in the arena, the computer registers between 200 and 2000 students per hour on the 1620, depending upon the state of the schedule and how unrestrictive the student's requests are. When the program finds a schedule for a student which satisfies all requirements, a record of each class in which he is scheduled is punched, the disk records identifying the classes are updated to reflect the new enrollment, and the next student is processed. Three major characteristics of this program set it apart from most others seeking to provide the same sort of service: (1) the program allows great latitude and flexibility in any student's schedule-a student may apply sectioning, time, units, and course o restrictions to prevent the program from giving him an unacceptable schedule; (2) when the program, as happens very frequently, is called upon to select a section from those available, it attempts to schedule on the basis of class size, from least full to most full, thus balancing the size of the sections on a continuous basis. Only in the event that no section of a class will fit will the program attempt to delete the class and sUbstitute an alternate if the student has listed one; and (3) the entire state of the schedule is held static during his processing, thus attempts at alternate schedules are unaffected by other students scheduling. The only condition causing a student to be unscheduled occurs when the program cannot satisfy the student's listed minimum units. Irrespective of whether or not a student is successfully scheduled by the program, any errors the student and his adviser commit are logged and the program attempts to take corrective action. o Among the many niceties in the program is the ability to include courses which have interdependent parts. For example, a Biology class may be divided into two hours of lecture, two hours of laboratory, and one hour of discussion each week. The student must register in laboratory and discussion sections which have the same instructor as the lecture section. The program insures that conditions of multiple-dependency such as the example are properly scheduled. When all the students have been processed, the output cards are sorted alphabetically on student name and run through a program which prints, in class-schedule style, C', a list of the classes in which the student is scheduled on -_. - _ .__.•. - - _ . _ - - - .. _. - - - -.• - - - - - .. .- .-. . - - - . - - - -..... _--_..... _--- ..... ~ ~;ii!iLi!i# continuous-form IBM cards. The separated cards are inserted in the proper student's registration packet together with his other registration materials. For the spring semester, the packets are then made available at the College Library for a period of several days. For the fall semester, the packets are mailed directly to the students. Lists are prepared showing how many students were scheduled into each section, how many seats remain, and the percentage of students entering the process who were successfully registered. The student now has the option of either accepting his entire schedule or rejecting it and participating in arena registration. ()I It has been proposed and will soon be adopted that each student prepay materials and service fees and be required to accept the computer-generated schedule. At present, those who could not be registered by computer are required to register at a conventional arena. An arena- like arrangement is provided for spring semester for students to pay fees. Clearance cards from this fee-paying arena or from students who, during the summer, return their fees by mail, are matched against output from the computer registration run, class cards for the students who accepted their computer schedules are punched, and the remaining class cards for each course are punched, interpreted, and arranged for arena registration. Arena registration was held for one day only this fall, 1967, for the first time in many years. . _AA¥ __ #44.##¥441...¥§If#.. . ..!._hT.M21t. .. Due to computer c193 assistance in room utilization, class card preparation, and class status reports, more than 4,000 students were processed in the arena from 8 AM to 8 PM this fall. Of those, nearly 2,500 were entering freshmen and transfer students who cannot currently participate in computer registration. At the end of arena registration, class cards from both computer and arena registration are merged and class rolls are prepared. Updated rolls reflecting added and dropped students are prepared at regular intervals during the academic semesters. Chico state also has, in the form of the student record-keeping system mentioned previously, the usual computerized grade cards, grade rolls, permanent record labels, lists of the standing of each student, and many additional reports and services. Due to the size limitations of the 1620 and the probability of a new, larger computer on the campus during the next few years, we have set several design maximums on all the systems. We have provided for a maximum of 100 sections of anyone course; 2,400 different course types; 3,000 sections of classes; 750 instructors; 240 classrooms; 9,000 students entering computer registration; and 47,000 class cards. While the design maximums can be very much larger within the capability of our 1620, we do not feel that the allocation of the additional space on the system disk pack is desirable. For example, we presently sort, store, modify, and otherwise process virtually all of the ii," 11 c data within the system on one disk pack which also stores all of the programs to use that data. To expand the size maximums of the system would require us to revert to card resident programs and/or additional disk packs. A new, more capable computer system, such as a System/360, will permit us to add additional flexibility to a request set for any given student. In addition to the obvious advantages of increased speed for all processing, a larger system would eliminate over 500 hours of sorting class and packet cards each semester. We would be able to generate an optimized class schedule based on history, enrollment projections, physical plant utilization, personnel idiosyncrasies, unique course requirements, and C') student desires, thus relieving the administration -and department heads from much of the routine work now necessary for schedule preparation. Among the many features we will implement with a newer system will be student request by course only, with programs to select and schedule the corresponding laboratory and activity courses required. We have so often been asked about modifications and implementation for other machines and schools that I feel a few remarks might be useful. The system we have designed is restricted to a college employing a semester-to-semester schedule and student planning basis. Modification for the 1620 for a college or other school desiring to plan college and student schedules more ---_._._.__ __ ..... .. -"~ I~ I']' 12 than one semester in advance seems unlikely, for we have stretched the capability of the 1620 nearly to its breaking point. I am certain that long-range scheduling is possible and desirable for any school having, say, a large-scale 1401 or a 360 system having a disk. I have carefully examined other IBM and some non-IBM systems for simplicity of adaptation and implementation of our system and I can say certainly that the system as we use it could very easily be processed on a single-disk 12K 360 model 20. It should be obvious that a system with capabilities as great as the model 30 lends itself well to expansion of our system. While the restrictions on size we have imposed upon ourselves may seem important, it is highly unlikely that any college much larger than Chico state would want to o implement the system if the largest machine available to the school were a 1620. We have been asked if the system can be implemented on an 1130 disk system. It can indeed be implemented successfully, albeit on a smaller scale, due to the size limitations of the 1130 disk. Chico state's system is based on a six-day week, 360 lS-minute periods~per-week system of time. This arrange- ment is not fundamental to the system, however, and could be changed without difficulty: while our system is designed for a six-day week, Chico State is, at present, largely a five-day-a-week school. By far the most frequent question we are asked is if any part of our system is dependent upon the characteristics c I: 13 of the 1620. Let me assure you that, even at the time the system was designed, we considered the 1620 at best an interim machine and, as such, we have always insisted to all who have worked on the project that it remain free of machine dependencies. While re-programming would, of course, be necessary for implementation on other hardware, conversion or modification for a new computer will not be at all difficult. Significant in the development of the entire system are two facts: (1) many ideas were conceived and all programs were written entirely by students at the College; and (2) when the idea for the registration program was born, IBM Systems Engineers were asked if it could be done on our 1620. Their reply: not even on a 60K, four-disk 1620 model II. Chico State College is indeed fortunate to have students rebellious enough to doubt all that they are told is and is not possible. c2- 9 7. --~.,.- ...............,...... _._----_......._-_...._-._-_._ .._..........--..-.-- ... ---------.--~-- 'l?-) o STUDENT INFORMATION SYSTEM AT CHRISTIAN BROTHERS COLLEGE Presented at the Winter Meeting of COMMON December 8, 1967 by Brother Jerome David Wegener Registrar and Dean of Admissions Christian Brothers College Memphis, Tennessee c STUDENT INFORMATION SYSTEM AT CHRISTIAN BROTHERS COLLEGE USING AN IBM 1130 COMPUTER In 1963, a system of records and grade reports adapted to the 1620 was initiated. This was a minimum configuration consisting of a 40K memory, a 407 for print-out, an 082 sorter, and several key punches used also for interpreting and reproducing. This was basically a unit record operation with the computer used for calculations. There was a great deal of hand work involved in every operation. This summer, an 1130 with disk, 8K word memory and an 1132 printer was installed. The immediate problem, then, was to reprogram the system making it adaptable to the 1130. This new machine had many advantages with its on-line printer and its disk storage for direct access to student information. It should be noted that IBM has prepared a Student Information System for the 1130 available from the COMMON library (3. 0.003). For several reasons, it was decided not to use this. One important. reason was that there was no provision made for storing the student's address. Since there is a great deal of correspondence between school and student, it was essential that this be included. There were a number of other variables in the old system that had not been included in the IBM Student Information System. Because of the shortness of time, it wa s des irable to keep as many of the features of the former method as c.··'\ possible. Another important reason for not adopting it was the fact that it !, _4"""424A_ . ¥4¥#_ .. __;;;:_. ==_._____ . ,_.q~~~~~". ,;_"~,"_. .",=,,,",·=J:;·,;~,d::tI.\_,=_t,"1=.Id.fl.1'1itrubiLi04\:".J.1jJL·.-·~WfuliLc8.(~"'iJIUiiiliiiOJWiiiil4A:&lUJU4U~"""'------ ""'!4+-"#!'...¥J1(2!1!11' J!IIm I;W«_!:';;;_4"A-':;:;P'!l!i\ll{ ,((\\'I!'\'!I J~,.&ff¥im •• ,MII'!~~._fi;;"milli.¥.I!I!!II.a m, ...T2l1i1l1!i$_MXi!!!l'lLt.tfilM_ .. _iiW ___ IIi!ll ..¥l!Iffi!Ol!fl~""",.r-Mi_"_ _.._ -had been written in Assembly language. While it is probable that it could have been adapted, it was felt that there would be many problems and difficulties involved in trying to revise a large assembly program. There- fore, it was decided to start from scratch and to write a system in Fortran incorporating all the data forms of the previous system. This probably runs a bit slower, but the ease in reading, debugging, and revising seems to make it well worth the time. The first problem was to layout the student file. It had been more or les s arbitraril y decided to attempt to store two students per sector. However, most attempts at planning it ended with more than 160 words required. This difficulty was solved by adapting several of the subroutines from the Commercial Subrouting Package (1130-SE-25X). similar to the Forcom routine for the 1620. These are One basic advantage that these new ones have is that, with two or three exceptions, they are written in FORTRAN so that they can be modified with a minimum of effort. They are called in the same manner as are FORTRAN subroutines. interest is the Pack/Unpack s,ubroutine. Of primary This takes an array in AI format (one character per word) and converts it to A2 format (two characters p:>er word), thus halving the amount of storage required. A GET subroutine converts from the A-format to decimal form for arithmetic operations, and a PUT subroutine accomplishes the reverse conversion. The student file finally decided upon was set to contain 320 characters. When operating on the file, these characters would be in AI format, and 30() r" l~ L.WUDK.' _. "ewr-'WfFf#ift¥tRth··· t ."t""h' ,t K',*,t!,», de It then packed to 160 A2 format characters for the purpose of storage. !H " . 'j h'riHNt,etM wIt~tij Thus two students occupy one sector on the disk. As can be seen in Figure I, this was more than ample for our needs, and it had space for additional information that might need to be added as time went on. The system works in the following manner. As was mentioned above, as much as possible of the old system was kept intact. From the application blank, the student's name is punched and he is assigned a student number. order. The student number is a five-digit number assigned in alphabetical In originally setting up the student file, they were read into the computer without regard to order. The computer then sorted them and so as signed a file number to each student. At the same time, it stores the o student numbers in a separate file in the same order. Whenever a particular file is needed, the student number is read in. The computer then does a binary search using function subroutine RSEEK to locate that particular student's file. His file is read into core I unpacked, and the necessary information postioned, usually by means of an EQUIVALENCE or a PUT statement. The file is then packed and written back onto the disk. At the time of registration I the students pick up their own class cards after their schedule has been approved by their adviser. Positioning these behind the student's name card, they are ready to be read directly into the computer. o The computer reads in the clas s cards for each student, alpha- betizes them, and stores them in the student's file in the manner described. 30/ .. A!44A4I¥._ ... -. This has eliminated the long process of gang-punching all of the class cards, and then sorting them into order first by course, and then by student. o The next program reads all of the clas ses from all of the files I and sorts the students into order according to their classes. Class lists are then ready to be printed and after that, the student information sheets. The latter are distributed in toto to the Dean, Guidance Office and other administrative offices, to the dormitory prefects according to residence hall, and to the department heads according to the students' majors. Adds and drops are handled very easily. The very tedious job of pulling drops and inserting adds by hand has been eliminated. It is now necessary to simply place the add cards after the student's name card, followed by the drop cards (coded with a 1 in column sever) and read them into the computer which then rearra.nges the student's file. running of report cards has also been simplified. The It is no longer necessary to gang punch the marks into each of the grade cards. The cards are simply sorted by grade and then read into the computer, switch settings indicating the type of mark that should be stored. Honor rolls, failure lists and grade statistics- are produced very easily, also. Permanent record labels are printed at the semester. New students can be added very easily once a student number has been assigned. The program finds the proper position and moves down one c 30~ ,f o notch all those files that will be behind him, much as a Disk Utility Progranl does. Likewis e, a student's file can be deleted with thos e follow- ing moved up one. Bills for each student are run off for the Business Office. The Student Directory, Teachers Schedule and various types of I statistics have been programmed also. Since the memory is quite small, each of these different operations requires a separate program, and in some cases, two or three linked together. This is, however, no great difficulty, since once they are compiled and stored on the disk, a simple XEQ command calls them into action. Improvements will be made when the two additional disks that are on order arrive. At that time, there will be more than enough storage to keep the student's entire four year course of studies accessible by the computer. The 1132 printer is quite slow, but the operations will be great! y speeded up when it is replaced by the 1403 printer • .As presently set up, the system will handle 1200 students, 100 instructors and 3 00 courses. Figure 2 shows the layout of the cards used as input. While no claims are made about the completeness or efficiency of the programs, the system does work well. With proper modification, it could probably do the job at other small colleges as well. 0,': ) 0' ." ,-" . . 4$' . Z .. .P.4,·.. 4i¥. I ~ ·.M '." ,¥It49ffi41i.£JYIM',;;Y;;:-·4".UOU..,Zlk.2miilii!%"hi_44.$4. .Qi£¥44! .. "'" 303 ~ I 1 A ,----"-' '-2-D-- 33 34 35 36 37 38 39 4041 42 43 44 8 1 H 0 !-----~.~Q H 2 I 4 L. . 5 P A 3 I 6t:1-L. 4 !I 7 L 9 _ 8 W L 1 9 c=-I_ _ D 9 1---'-"10 L 2 1 11 L 5 P 7 2 12 I 2 A 2 0 45 4 71 6 i 13 A 46 78 1 0 1----i~M 47 C 79 5 d !--16F 48 H 80 1 1 i 17 49 E 81 1 6 1 18 50 Y 82 9 1 19 51 N 83 0 1 1 20 52 E 84 6 1 1 I~_.--?_l__ _ 53 y 85 4 4 0 22 M 54 86 3 8 0 55 R 87 6 5 8 23 R 24 56 D 88 4 0 I 25 W 57 89 0 r--'--------"~-'­ 58 90 M 1 26 i"i 59 91 __ A___ 0 I 27 1'''"'---28-F 60 92 U 0 61 93 R 1~1 2 I 29 1----30-- A 62 94 E 1 1,8 0 !.oc_"_._-.ll_~Q._, ______________ ~ 3__ ~_~ ___________~}______b ___ ." _________ _ l2.1 __1______ 15.9__...L___ _c_ _, 32 0 64 P 96 1 128 8 160 8 I r 65 66 67 68 69 70 71 72 73 74 75 76 L. P R 1 N G F I E n _______ ! .~--~-~.-.~ .. ~-.-.~-- . . . - - , - - - . - - , . . ---.-~.------.- •• - - - 97 98 99 100 101 102 103 104 105 106 101 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 ¥ ' .•••••• A N 129 130 131 132 133 134 135 136 137 138 139 14v 141 142 143 144 14 5 146 147 148 149 150 151 152 153 154 155 156 - - -__ . ___ "____ "_ -_._--_0. __ ... _.. ____ ._. _ ______ . . ___._. _._ _.~ 161 1 162 8 163 0 164 2 165 0 166 8 167 168 169 110 171 172 173 !74 115 176 J. 7 7 118 119 180 181 182 183 184 1ij5 186 187 18S 189 0 190 3 191 .1L_______ 19~ C 193 194 195 196 191 198 199 2UO 201 202 203 204 2 ~ 1 E 4 2 3 D 2~5 9 226 8 2~7 F 228 260 2~9 ~61 230 231 262 263 2j2 257 ~ 2'~ ~59 1 0 1 7 0 1 1 U 1 6 ~64 233 234 235 265 266 267 2~6 268 237 269 2j8 21U 2J9 271 240 272 2~tl___t.1 'J 242 274 243 ,15 244 27c 245 271 246 27b L41___ __ _i.l~_ __ 246 280 249 2bl 250 282 251 28~ 252 284 253 2d5 2 54 266 25 2 Q 2d7 "0 9 2Sa 4 20~ 5 206 6 207 E 208 2 09 6 210 5 ,11 1 212 0 ~13 214 1 215 0 21~ 2 ~11 C 21d 219 7 2~O 6 i~l d 22;' F 2,3 224 1 2d9 290 291 292 ~93 294 29~ 2~6 291 298 2~9 300 ~ 30~ 303 304 3' U5 30b 307 30~ 309 310 ~ll 312 313 314 ~15 310 317 31 tS -31 'i 320 -~---------------------------.---' ~---------------------------------------, .. ~,._.~_ .... ,_"~ •• _ _ _,_~ .... ~...._~._ _ _ _ _ _ ~ ~ _ _. _ _ _ _ _ ~ _ _ _ _ _ _ _ .• , l~____"__.."___ .,__""__c,c"-:"__ \__ "_~ I\~ r--'~-----~ C . - " .. ~~ _ _ _ _ _ _ _ , _ _ _ _ _ _, _ _ _ _ _ _ _ . . _ _ '~' _ _ . r Figure I-a -""--.'--,----,,---------- ~- ~ ,------------~o--~ _--I •. ,.·"·"...""·7'~ __ ...... _ • ...."."- _ _ ,--.... _ _ _ _ ~_ ......."'"_ ..... _ _ ~ ___, ... ~ ........._ _ _ _ r _ _ _ _ _ _ • ... _~ . . . . . . . _ - _ ....... " .. _ _ _ _ _ _ _ _ _ _ _ _ _ _ • _ _ - ;Wefm?n DISK STUDENT RECORD FORMAT C Word 0 1-21 22-42 43-62 63-80 81-85 86-105 106-113 114 115-116 117-119 120-121 122-129 130-135 136-145 146 147-148 149 150-151 152 153-154 . ISS . 156-158 159-160 161 162 163-164 165-166 167-175 176-179 180-182 183-185 186-188 189-248 o 249-251 252-254 255-258 259-261 262-264 265-267 Description Student Name Parents' Name Address City and State Zip Code Local addres s Local telephone number Graduation code Hours being taken High School rank High school courses High school average Date of birth ACT scores Dormitory code First time status Probation code Number of cours es being taken Special student code Religious preference code Bill ing addres s code High school code State code Year in school Boarding status Major code Action code Blank Cumulative quality point ratio Cumulative hours Cumulative credits Cumulative quality points Course numbers and grades In groups of five: 1-3 course number 4 grade in cours e 5 former grade if repeating Rank in cIa s s Number in class Semester quality point ratio Semester hours Semester credits Semester quality points Figure 1-b _ ;;4 - _roo"! '-~~-~'---"----""'--~--'-' ~---- .,,-,,--_._------------ o CARD INPUT FORMATS Student Name 1 Stu C$.4 :3 ~ +I II) .... .... '0 CleO .... tJt) '0 .0 e ~ +' +I rf rf :SO': 5U)z CI) CI) +' t.l::3 .... ~ = """ 0 C ':> a u ~ Q.. o~oooooooooooooooooooooooooooooooooooooooooooooooooooo00000000000000000000000000 1 8 J , 1 4 5 6 7 Stu a 9 '011 11 13, ,. 15 ~s '1 !3 19,"0~' 77. ~r "4 1~ "'6 '7 • -- _J • • , - . Parent's Same ." " 111.LO)1)1.o·' ~ !CJI18·940~1414H4~5464'~8~95051525JS45S5657~5nObl 2636" ~66F.i !69'on'213741S76nl'H!~ Address Zip City & State I I 9 Stu Loe al Add resS Phone No. ~~~~~~~~~~~~~~~~~~~!~~!~~~~~~!~~~~!:~~~!~!~~!!~~~:~!~~:o::~!~~~!~:~~!:~:~!!:!!:! COURse; DESCRIPTION 0810'8008000000000000000000000000000000000000000000000OOOOOOOOOOOOOOOO'~OOOOO.tl l2J45'1,."n~DUeMnGd~nnn~~~V3N~~n~~~.nu~.~~c«~«VqUW~~~~fi~~UU~~QQMU"Van~nnn~~~nna , 11111 11 1 111111 1111 1111 \ 1 1'1 ttl " 222222 222222222222222222222222 333333 "'444444 " Christian Brothers College Memphis, Tennessee 333l33333333333331J3331! 44444444444444444444~444~ 555555555'555555555~S5t~ '.5ItS&S STUDENT GRADE CARD &666616'6'66'66("6666~' , ,-,'\ 111711~~~~~~~~~~~~~~~~~~~~~7771111171717711111ii1~1 • Figure 2 .~-- -----~------- -----._--- -'- --- -- •• MID-TERti GRADE ----~------~----------- -------- ____~ "My o 0 . Appendix A. !W - -- "1TIliWjUif nh5 'j ...... I("f'tftiib in ..... t 1" iiti 'tiiW';bt, '&#dt#"j 'bNttWh#tirl':ittw Programs used to set up and maintain student file RDNAM Read in name cards to initialize students RDATA Read in students data RDSKD Read in students schedules I any order CTSEC Count setions and prepare class lists PRLST Print class lists INFO Print student information ADDCS Adds and Drops COREC To correct student information ADNAM To put a new student in the file BILLS To prepare bills BILSM Billing summary PRTOT To print totals in each section ENROL Enrollment statistics DRTRY Print student directory I I , o 307 '...ffi.f/f... .ib.... ,t,$. . .l.J$g .\\!i$l6!!¥$.- ,;·iiG;ik!liM·M.4;;:i4QAi. .4•• :r#>I¥""'F¥-.,;;;;r.,. . .se. :"'1.P..3i-iA·,,,,· \ .\ ;,; ...;#: .. 4!LfAi·",iwfuibii'i,.~'bt!Ilil!t'.m1'tfJiiiJi!.U¥L"'i&ii&.ZZ2 ..44 .. &$ ..... N Programs used at report time. Appendix B. o PCHGR To punch grade cards and print grade report forms CLGRS To clear grade area and set Orientation mark RDGRS To read in grades CKGRS Check to see if all grades are present CORGR To correct missing grades GRSUM To prepare grade totals GRSM2 To prepare grade totals (second half) PRGSM To print grade totals and statistics CTACN To separate and store actions PRDL To print Dean's list FALUR To prepare failure list CLSTD To determine class standing o o 30P --.--.~---.- ... - .. -----.. --.-.---- -- -._ .... __ ._..__ .• _ - - - - - _.._---_.. _ .. _. __.._-_._--_•...- - - - o o Appendix C. V,tility ~rog~ams RDCRS Rea~ RDTCH Read in teachers' names CTTCH Prepare teachers' schedule PRTSK To print teachers' schedule RDABM Read in abbreviated majors RDACN Read in actions RDEPT To read in department names RDPAB To read in department abbreviations (4 letters) RDPAA To read in department abbreviations abbreviated (2 letters) RDFIL To read in entire student file from four BOAl cards RDMKS To read in and store the 12 possible marks PCHCD To punch class cards in master course cards Print list of all courses o PRFIL Print out student files PCHFL To punch entire student file STPRB To set probation code to zero 3G9 --~ Appendix D. -~ , ..., , , . _ . , - - - o Mark Conversion The twelve possible marks are stored in a file in a specified order. In the student file they are given a code letter as follows: Mark Number Mark 1 2 3 4 5 Mark Code A B C D F S U A 8 I H 9 WP WF Ex Au I 6 7 10 11 12 The mark number is read in. B C D E F G J K L o The following steps set up the mark code: IF(MKNUM 1 10) 1,2,2 MCODE + -16320 + 256*MKNUM GO TO 3 2 MCODE = -14528 + 256*MKNUM 3 CONTINUE The reverse process is used to determine the mark number from the mark code when printing reports. o 3/0 ...-._ ... - .... _ - - .. "--'--~ --------------------------------, o Appendix E. SUBROUTINES G ET(RLVAR, JFLD , I, J , ADJST) To get a real variable from an array. IGET(INTVR, JFLD, I, J) To get an integer variable from an array. PUT(RLVAR, JFLD, I, n IPUT(TNTVR, JFLD, I, o To store a real variable in an array. n To store an integer variable in an array. RSEEK(RLVAR,RARAY,N) To locate position of a real variable in an ordered real array. ISEEK(INTVA, IARAY, N) To locate the pos ition of an integer variable in an ordered integer array. SORT(RARAY, N RMODE) To order a real array. IS ORT(IARAY , N MODE) To order an integer array. PACK(LIST, I J, LPKD, K) I To convert Al format to A2. UN PAC (LPKD, I, J, LIST, K) To convert A2 format to Al. I I o 3/1 M\ ..r. ..v«up.?A1iC&&!i!4AQiIWZ 4 .L ... Q #41#444 .. .4 . . #4 .... ·-M- .. o 1. Name of Prime Committee: Installation Management Project 2. Subject: "Use of Psychological Tests In Selecting Programmers" 3. Speaker's Name: David B. Mayer, (speaker) co-author: A. W. Stalnaker 4. Company Speaker Represents: International Business Machines and Georgia Institute of Technology 5. Mailing address and Phone No.: IBM Thomas J. Watson Research Center P. O. Box 218 Yorktown Heights, New York 10598 (914) 945-1708 6. Day and Time of Speech: Tuesday, December 12, 1967 8:30 - 10:00 a.m. 7. Number of Pages of Text and Number of Pages of Graphics Included: 21 Pages of Text 3 Pages of Graphics o c 3/2\ c The Use of Psychological Tests In Selecting Computer Programmers David B. Hayer, IBH - Watson Research Center Yorktown Heights, New Yotk Ashford W. Stalnaker - Georgia Institute of Technology Atlanta, Georgia o A presentation for the COMMON Organization, San Francisco, December 12, 1967. Adapted from the tutorial entitled "Computer Personnel Reseaich - Issues and Progress in the 60's" given at the Fifth Annual Conference on Computer Personnel Research, University of Maryland, June 26, 1967, sponsored by ACM-SIG/CPR. The first session of the Conference was devoted to a review of SIG/CPR's progress in research since 1962 and some thoughts on problems which still face us. This review was in the form of a dialogue between a computer center manager, David B. Mayer, and a management scientist, Professor Ashford W. Stalnaker. :;:r~.L"".f,:,j••.i •..tL,.,,.., . ""'!!."" 41" 4. ,g.\. 1.¥.ii'."'.~'Il'@i¥ ., .. _,i'!!''''''tUiI''''".'..-1:p.;""'.,;,..,., ..¥;'!':"!".,",..... 1t..fOO.M1ilffii. .... ", • .'!l!!!;,,$.!m!W:r!iM,&i\IIIiIlIillll .. _il!ll! •.C~."'I!I.... !Itl_,_ _ _....... ¥fb?§_ .• _ _ _. ..,..,""". T4~"""+~,#,.,..",!'i"\1,·,i?,iF.4iIi"""1'i"",f¥.\"""··fu:":!l",\L~_"~~,,,T'l;"""dA1][t::IrnLlA&"""'ru;:;;""'·ujl;:uliiii"""._"'"',r''''''n"i.. .....,.liii/iIiIi_ ......__•_ _ _ _ _ _ _ _ _ __ II''I,, ,' I Maye~: Good morning ladies and gentlemen. I represent both IBM and the ACM Special Interest Group on Computer Personnel Research. Originally, this group was known as CPRG (Computer Personnel Research Group); founded back in 1962 as a result of some discussions at the RAND Corporation. I guess one might say that psychologist Robert Reinstedt was a little lonesome for the company of some other researchers. He had been investigating the problem of programmer selection and discovered that there was indeed very little research on this subject -- except in the hands of a few colleagues in his general professional area, namely, Dallis Perry at the Systems Development Corporation, Professors Raymond Berger and James Rigney at USC, Jim Tupac at RAND, and Dr. Sherwood Peres who was at the Sandia Corporation. He called these people together and they laid out a charter for CPRG in September 1962 at the American Psychological Association meeting. The group decided upon the final design of a test battery to be administered across the country to as many installations and experienced programmers as they possibly could find. The test battery consisted of the Programmer's Aptitude Test, (better known as the PAT) by Hughes and McNamara of IBM; the Strong Vocational Interest Blank; and a special trial test named the Test of Sequential Instructions. There was some personal background material covering education experience, and so forth. The results of this test battery will be included in the body of my talk, but at this point it suffices to note that we completed it successfully, and we calculated correlations on the data, obtained much information, and initiated the kind of research that CPRG performs. The initial researchers went on from that point to develop a Programmer's Appraisal Instrument, which is an evaluation device. This was the result of Dr. Sid Fine's work with Robert Dickmann (now SIG/CPR Chairman) at Johns Hopkins University. It was tested there at the Applied Physics Laboratory, and at 24 other installations. o o The next step in our research was aimed at advancing the state-of-the-art of interest tests. The Strong Vocational Interest Blank had been revised (this had nothing to do with CPRG) and, after additional testing, Dallis Perry developed a key for programming as a separate occupation. In 1966 ACM approached us -- they thought that we were doing so well that we should join the computing fraternity, since originally CPRG was composed primarily of psychologists with only a sprinkling of computer managers. We agreed that joining forces with ACM allowed CPRG's research to be enhanced through broader contacts and outlets. Hence, in this survey paper today, I would like to detail some of that research history, and some of the existing issues as we see them at this time. First, permit me to tell you a bit about the use of some of these tests in selecting computer personnel. Figure 1 summarizes the results of the Dickmann survey of 1966 which was reported at the Fourth Annual Conference (1). This figure indicates that 483 firms in the United States and another 98 in Canada participated in the survey. In the US 68 percent used tests in some form or another for selection. This corresponds very closely to 72 percent in Canada. The number of programmer-analysts actually employed by these organizations was o c over 23 thousand in the United States, with another thousand in Canada. The number of people who are needed in the forthcoming year as of the time of this survey was another 25 percent. Figure 1 also shows the composition of the sample by industry groups. The kinds of programming being performed were basically of four major types - BUSINESS, SCIENTIFIC, SOFTWARE or MILITARY, or combinations of these (Figure 2). Of them, the largest percentages were in business computations with scientific applications coming in somewhat lower. Military and software programming were small by comparison. o What kind of programmers are there? We classified them at the time the survey was designed into four major categories: a programmer who was essentially a junior or trainee; the second one was called the experienced programmer; a third level we called the system analyst trainee; and the fourth one was termed the experienced systems analyst. Figure 3 answers the question as to what kind of education is demanded by the various institutions or organizations in their hiring practices. In the United States it tended toward having some college training or a degree - over 50 percent of the US sample, especially for the programmer-trainee. This tendency is a little more emphasized as you move up the experience ladder. Canada's educational requirements were somewhat lower, possibly because they do not have as large a college population from which to recruit. In Canada, 65 percent of the programmer trainees had only a high school education and the remainder had some college or above. If you consider the experienced Canadian systems analysts, you will find that 28 percent had a high school education or better. However, 37 percent were not reported, so we can only generalize about the true proportions in this situation. Canada, therefore, is drawing on its resources of personnel in accordance with what they have available. Tests were used in many of these organizations, but they were used differently depending on whether the firm required much education, or little. Or to put it in reverse, possibly tests were NOT used in many cases, and hence the educational requirement was increased to compensate. Taking one category as an example, the systems analyst trainee, almost 50 percent were required to be college graduates if tests were not used; if a test were used, only 39 percent were required to have college degrees. This pattern repeats itself throughout Figure 4. We will not dwell on this except to note that tests are used in many cases in conjunction with educational requirements, but in differing degrees. o What types of tests are used in these two countries? The tests reported used were broken down into four major classifications as shown in Figures 5 and 6. The first major classification is the general intelligence test with the most commonly used being the Wonderlic Personnel Test -6,0 organizations in the US and 7 in Canada. 13 of these organizations had undertaken validation studies of this test. Whether the validation studies consisted of actual on-the-job performance validation or training validation was not indicated in the survey. The other two principal tests used are general intelligence tests. The second type is the aptitude test, which is being used as if it isolates programming as a separate and special aptitude. The IBM Programmer Aptitude Test, PAT, is by far the most commonly used test in both countries: over 282 organizations in the United States -- approximately 83 percent, and 67 in Canada. Of the remaining aptitude tests, the National Cash Register Test, ~he Science Research Associates Test Battery and several others were used, but nowhere nearly as widely as the PAT. The Federal Service Entrance Examination is not a true aptitude test - it is a test, I believe, that is given to almost any prospective federal service employee, for many different positions. o The two other types found in the survey were the personality tests and the interest tests. Very few of them are used. Personality tests were being used by only 10 or 15 organizations and very sparingly at that. For example, the Thurstone Temperament Schedule and the Activity Vector Analysis were each used by only three organizations; several others were used in varying degrees. For the interest tests, the Kuder Preference Record was cited by only two organizations. Interestingly enough to me, neither Strong Vocational Interest Blank (SVIB, original or revised version) was mentioned by any organization. Yet it is one of the few for which there exists a key for programming. It is hoped that SIG/CPR will have some educational effect by bringing the value of SVIB to the attention of those responsible for personnel selection. Among the other tests is the 1401 Autocoder exam, which was developed by Computer Usage Corporation. This test is a form of the Logical Analysis Device developed by Langmuir at the Psychological Corporation of America. This latter test, known as the LAD, was not cited at all, however. Let us take a look at the use of the PAT for a moment. (See Figure 7). 282 organizations use it in the United States. 128 of them use it in combination with some other test. 154 use it alone. As for position levels at which it is used, for the programmer trainee - 278 organizations gave the PAT; for the experienced programmer ---and this is always a delicate subject for a computer manager who is interviewing candidates--- there were 138 organizations; for systems analyst trainees - 142; and for experienced systems analysts - only 87. Of these, 71 organizations had performed validation studies - that is, how the performance of the programmer compared to his score on the PAT. 22 organizations, or a little less than 10 percent, actually discontinued the use of the PAT for various reasons. This completes our summary of the Dickmann survey, and I think it would be well worth while to go into some of these tests and describe them and relate them to a sample test which you will take in a few minutes. Let us consider some of the several tests that have been used in various CPRG studies ~-- a sample of some of these were included in the small test battery which you just completed. In the original CPRG national survey (6), three cognitive devices were included. These were the PAT, the Strong Vocational Interest Blank, and the Test of Sequential Instructions. The first of these, as was indicated by the Dickmann survey, is by far the most popular selection instrument in both the· US and Canada. The results of the first CPRG study indicated positive correlations between o \ 3/b C':·~ 'i the PAT score and actual performance only in a small number of cases. In the overall summary of the report, no correlation was found between the PAT and supervisory rankings of performance. The PAT has also been used in two studies subsequent to the CPRG national survey. The first was by Biamonte (11) at NYU working with a group of non-credit programming students, and the second by Gotterer and Stalnaker (12) at Georgia Tech with several groups of undergraduates enrolled in a computer course which had as a major component programming and systems analysis. In the latter case, as was true in the national survey, no correlation was found between PAT scores and performance in a training situation. We emphasize that the work at Georgia Tech was strictly in a training situation and in no way relates to subsequent performance in an actual programming assignment. Does such a thing as a programming aptitude really exist? Well, I have been trying to find that out from CPRG for several years. You know, after over a thousand interviews -- which I'm told is the worst way to find out whether they are a programmer or have potential -- and approximately 200 people hired over my signature, I would say that I can detect what one might call an X factor; it's probably called aptitude. I do not know of what it consists; all I can say is that a particular candidate sitting before me seems to possess "it" and will succeed in the -programming art. o CPRG seriously questions that there is, as far as the training situation is concerned, any indication of a specific programming aptitude. Our interest was generated by the repeated occasions which were observed at Georgia Institute of Technology, wherein a truly marginal student -- a student who was only barely able to maintain satisfactory status in school was able to succeed in developing a rather sophisticated programming skill and also a sophisticated approach to systems analysis. Let us now look at some of the CPRG results with regard to the PAT (6). As I mentioned, only in a limited number of cases was there a significant correlation between PAT results and ranked performance. However, I feel that one of the points that we should pay special attention to is the sort of crossovers or the reversals we get in terms of the PAT. We will notice among the business programmers (Figure 13) who are graded in the upper half with regard to their performance, 42 percent of them scored 44 or below the PAT. On the other hand, among those who were rated in the lower half in regard to their performances, 49 percent of these scored 69 or above on the PAT. We might note too that the relationship in this case could be curvilinear. In the scientific group, Figure 14, the relationship is approximately linear and the degree of the reversals not as large as in the case of the business group. Here we note that 31 percent of those who are rated in the upper half with regard to the performance scored 44 or below, and 34 percent who scored in the lower half in terms of their performance scored 69 or above. In the sample there were 534 programmers; 301 of them were scientific programmers and the remainder were in business programming. There were 25 different installations and companies. A second component of the national study (6) was the Test of Sequential Instructions. The author of the TSI states that it was designed to 3/? -·5224 .. .#...4.4. hlP . . . AL44 .. ;, ,-:.,4 show that any test that in some way measures a form of logical reasoning will in some sense indicate the level of performance in programming jobs and will also indicate in some sense the intelligenc.e of the individual. This hypothesis is borne out by the results of the national study in which the correlations between the TSI and the PAT were in many cases quite significant. C :1 In my scientific programming group I obtained a correlation coefficient of .70 between the PAT test results and my supervisor's rankings. But interestingly enough, on the TSI, the correlation coefficient was .71. So I naturally asked myself, what was I doing that was right? Could I interchange the TSI with the PAT as part of selection procedure for programmers? The DTSI, to me, tests the ability to do multiple tasks simultaneously. To perform well on that test you are holding one task in the back of your mind while another task is being performed in the foreground. Then, we build up to 3, 4 and 5, in fact, in the real TSI, I think we have 7 tasks running simultaneously. The PAT, to me, has no such attribute. The PAT does test other components which are required in programming --- numerical capability, spatial relationships, and such. I suspect the two tests supplementary rather than interchangeable. The third component of the CPRG national the Strong Vocational Inventory Blank (SVIB). The SVIB is a test that has been in use for a great number of years, primarily though, in the vocational counseling area. The purpose of the SVIB is to elicit information regarding the interests of the testee. The interests are then compared to the interests of people who have been successful in several occupational groups, the hypothesis being that if a person has interests similar to those successful in certain occupations, there may be some motivation to enter this occupational area. It should be noted that the SVIB is not claimed by its author to predict performance on the job; instead, it only elicits information regarding interests. ("'\ \"'J/ In Figure 15 we compare the interests of computer personnel to the public in general in regard to certain answers to questions on the SVIB. The SVIB contains 400 items. Notice specifically the item on progressive people: 41 percent of computer personnel like this type of person -- among the general public 85 percent of these people like people with this outlook. On the ,other hand, there is a great flocking among computer personnel to conseryative people. 84 percent prefer these, while among men in general, only 56 percent. Another example was thrifty people: 45 percent of computer personnel stated they liked this attribute. They are much better liked by people in general -- 74 percent. Can we look at individual items in the SVIB to see if these indicate anything in regard to the general interest pattern that should be the pattern of a successful programmer. The answer to this is a decided NO. We mentioned two categories -- progressive and conservative people. The results shown by the SVIB are reversed in work by Biamonte (7) at NYU in which he specifically considered attitudes. He shows there were negative correlations between training success and such attributes as dogmatism, conservatism and authoritarianism, a finding which would indicate the reverse of your conjecture. The point is that the SVIB questions when taken out of context have no meaning. One must analyze the complete 400 questions in order to elicit anything regarding the total interest pattern of the individual. - ~-----""' ~~- ~ o The normal scoring of the SVIB is quite complex because it has to be scored for all occupations. It is possible, I might mention, to hand-score for a particular occupational group. For instance, since the interest of this group is the computer programmer, it could be that the keys could be obtained and thus we could hand-score for this specific occupation. However, I would like to warn against this; the SVIB is meaningful only in terms of its total content. When we take an occupation or a question out of context, the results are questionable to say the least. I have mentioned the existence of the programmer scoring key for the revised SVIB. The series of questions that you have in your sample battery are from the old SVIB which was the one used in the original CPRG national study. Subsequently, Dallis Perry (8) undertook another national study in which he used the revised SVIB. He also worked with a larger sample than that included in the original CPRG study. Based upon this work, Perry has developed the programmer scoring key which is now available to all users of the SVIB. I think now we should move onto the topic of programmer evaluation -how can we determine if a programmer is actually effective on the job. The first research in this area was reported by CPRG. This was the Programmer appraisal Instrument (4) developed at the Applied Physics Laboratory, under the direction of Bob Dickmann and Sid Fine. This is a multi-dimensional instrument, which in many ways appears to be more concerned with what might be regarded as a professional programmer rather than the operating programmer - at least I think this is sort of a summary of remarks made in the evaluation of the PAl. There is a considerable emphasis on professional activities and this, in some cases, has led to resistance. It is composed of four specific areas: professional preparation and activity, programming competence, dealing with people and adapting to the job. This instrument was validated by Bob Dickmann but is not believed to be widely used at this time. o The PAl asks a number of items to be scored numerically, such as: how many societies does he belong to? and how old is he? does he give some on-thejob training -- a lot, or not at all? A supervisor finds that" the items do not really cover the subject of programming, or programming capability. Supervisors generally shy away from question-and-answer procedures for appraisal of programmers. Practically none have actually put this PAl or equivalent ratings into effect. Progressive as I am - I haven't either. My project leaders were very resistant to it. They prefer to use subjective techniques, such as their impression of the programmer's output; sometimes they actually read his programs. But a formal document of this type they resist. In evaluating a coder for upgrading to programmer, a better procedure would be to temporarily take a coder out of his current category and put him into direct programming tasks and to observe his programming capability rather than evaluating him through a questionnaire. Additionally, I would like to have some kind of test which will actually show his level of competence. A test that is concerned with programming ability to indicate readiness for the move from coder or programmer to senior programmer should be implemented. There is one further thing that must be done, and that is, as Dr. Paul Herwitz (13) of IBM has recently stated, the only way a supervisor can tell what a 3/~ i L# . __ # _ Ai_ - ~ _. - - ._. ---- .. _.- ....-- .....-... ~" .................. _.... ~- programmer is doing is by being knowledgeable about the code that he has written. In other words, he must read the program, and very few supervisors do. That would be the first step I would say towards proper evaluation. ~ The second step would be to give a proficiency test, an objective one. In terms of such an objective test, Berger (10) at USC has developed a test which is called The Basic Programming Knowledge Test (BPKT). This test was developed and validated with a group of naval training programmers and also with some outside agencies such as RAND, SDC, etc. Specifically, the test is designed to evaluate six different abilities: first, logic estimation and analysis; second, flow diagramming; third, programming constraints; fourth, coding operations; fifth, program testing and checking; and sixth, documentation. Not only does the test evaluate the person's performance in these areas, but it is also designed to elicit information regarding his basic knowledge of the areas. Similar tests for different types of programmers at different levels would be very effective evaluators. The problem, of course, is the resistance the programmers show particularly as it applies to experienced ones who are very much in demand. We have cited the PAT, we have cited the Strong Vocational Interest Blank, we have cited the TSI. Now then, the PAT is an aptitude test, presumably, and the SVIB is an interests test; the TSI presumably tests a kind of logical capability. If I use all these tests and get good scores on all of them, does it mean I selected a good programmer? The answer at the moment is - no. I don't think it means that I have selected a good programmer - but it may well increase the probability that I have selected one. We have not been able to show at this point, with the exception of the recurring interest pattern of programmer personnel, any strong indication of substantially increasing the probability of correctly selecting a programmer by the use of this battery. Very probably if you would use all of the tests to select an individual, you can obtain a person who has a high probability of successfully completing your training program. Whether this individual is going to like programming or will possess the motivation that will allow him to take the successful training onto the job site is a question that is not yet answered. Well, then I think we come to a small denouement, and it is that if we look at the past five years of computer personnel research, the major effort has been in the development of two sets of testing predictors: (Figure 16) testing for training success, and testing for job performance. We have said that we have good predictors for the training phase and questionable ones for the working phase. Temperament and motivation tests are frequently considered as good predictors of training success and job performance, but we have no research using them. Finally, of the "work sample" tests, the only proficiency test I know of is Berger's Basic Programmer Knowledge Test. I understand that he will publish a version of it in the public domain, by permission of the Navy. For evaluation procedure, at the moment this consists of the Programmer Appraisal Instrument (PAl) which we developed but have not used. This I think sums up the situation at the moment. A more concise summary of our current knowledge is that the more intelligent person you can find, the better programmer ~ you can probably get •.. which makes all of us here today good programmers! c We might mention this point, that a test does exist that claims to be in this general area. This is the DPMA Certification program. However, I think we should note that it is quite questionable that there exists a relationship between this test and what we might identify as any level of programming skill. The DPMA test is primarily a knowledge test, but not at a very sophisticated level. It is my understanding that it is general knowledge -- at least that is my impression from the groups that were formed to study for it. To summarize: We have called for several new procedures which should be investigated in the years to come. Despite the fact that I have been told time and time again by my psychologist friends that my or other people's interviewing technique cannot be a really effective device, it is still the one that I, as a computer manager, use in at least 50 percent of my evaluation of the candidate. Hopefully, if these new procedures can be developed, both I and my fellow managers will be better able. to select, train, evaluate, and reward our computer personnel. Thank you everyone for your kind attention today. o o BJ..,/ BIBLIOGRAPHY ', C I 1. Dickmann, R. A., "A Survey of Computer Personnel Selection Methodology," Proceedings of the Fourth Annual Computer Personnel Research Conference pp. 15-27. 2. Lothridge, Charles, "Levels of Classifying Data-Processing Personnel," Proceedings of the Second Annual Conference Computer Personnel Research Group, pp. 13-28. 3. Berger, R.M. and Wilson, R. C., "The Development of Programmer Evaluation Measures," Proceedings of the Third Annual Computer Personnel Research Conference, pp. 6-17. 4. Dickmann, R.A., "A Programmer Appraisal Instrument," Proceedings of the Second Annual Conference Computer Personnel Research Gr ou...p.. , pp. 45-64. 5. Bairdain, E.F., "Research Studies of Programmers and Programming," IBM Corporation, 1964 pp. 78, 136, 62. 6. Reinstedt, R.N. et al., Computer Personnel Research Group Programmer Performance Prediction Study (RM-4033-PR), The RAND Corporation, Santa Monica, California, March 1964. 7. Biamonte, A.J., "A Study of the Effect of Attitudes on the Learning of Computer Programming," Proceedings of the Third Annual Computer Personnel Research Conference, pp. 68-74. 8. Perry, D.K. and Cannon, W.M, "A Vocational Interest Scale for Computer Programmers - Final Report," Proceedings of the Fourth Annual Computer Personnel Research Conference, pp. 61-82. 9. Stalnaker, A.W., "The Watson-Glaser Critical Thinking Appraisal as a Predictor of Programming Performance," Proceedings of the Third Annual Computer Personnel Research Conference, pp. 75-78. 10. Berger, R.M. and Wilson, R.C., "Correlates of Programmer Proficiency," Proceedings of the Fourth Annual Computer Personnel Research Conference, pp. 83-95. 11. Biamonte, A.J., "Predicting Success in Programmer Training, Proceedings of the Second Annual Conference, Computer Personnel Research Group, pp. 9-12 12. Gotterer, M and Stalnaker, A.W., "Predicting Programmer Performance Among Non-preselected Trainee Groups," Proceedings of the Second Annual Conference Computer Personnel Research Group, pp. 29-44 13. Herwitz, P.S., "Programmer Evaluation" GUIDE Organization Talk, Management and Administration Committee, .1966 (IBM, Armonk, N. Y.), 12 pp. 14. Rigney, J.W. and Berger, R.M., "Computer Personnel Selection and Criterion Development: II. Description and Classification of Computer Programmer and Analyst Jobs," Tech. Rpt. 37, Proj. NR 153-093, Dept. of Psych., U. of Southern Calif., Dec. 1963, pp. 26 ff. "~---.- .. - " -----_. - - _.•. _ ... _-- ........_._-_._..... _._...._ - - - - - - _ . - ~\ o C' !,,!lim" " Oi United States Organizations Participating Programmer/Analysts Involved Approximate Number Hired Each Year Canada 483 98 23,636 1,083 5,317 (25%) 177 (20%) United States Number C Canada Percent Number Percent AIRCRAFT INDUSTRY (Industrial, Aerospace) 47 10 3 3 ELECTRONIC INDUSTRY (Industrial, Electrical-Electronic) 35 7 2 2 OTHER INDUSTRY (Petroleum, Metal, Automotive, etc.) 120 25 34 35 FINANCE (Banks, Insurance Companies, etc.) 81 17 21 22 RESEARCH (Non-profits, University Labs, etc.) 90 19 10 10 GOVERNMENT (Federal, State, and City Civil Service) 50 10 8 8 UTILITY AND OTHER NON-MANUFACTURING CON'CERNS 60 12 20 20 483 100 98 100 FJtom V~c.kmaY/.Y/., Re.6· 1 FIGURE 1: TYPE OF ORGANIZATIONS IN 1966 CPRG SURVEY o 3J3 "M "" Wrtt"it . _ - - - _ . ".........._-, .. ... _-------_ ... "---,, " . ,,,._.- ..- - . o United States Canada 186 58 Business and Scientific 84 11 Business and Scientific and Software 72 6 Scientific 44 6 Scientific and Software 34 1 Business and Software 33 1 Business and Scientific and Software and Military 12 0 Software 6 0 Military 4 0 Scientific and Software and Military 3 0 Business and Military 2 0 Business and Software and Military 1 0 Other 2 1 Business FJtom V.-tc.fzmann, Re6· FIGURE 2: PROGRAMMING STAFF APPLICATIONS 0 c Progrannner Trainee U.S. None Specified Canada Experienced ProErammer U.S. Canada System Analyst Experienced Systems Trainee Analyst U.S. Canada U.S. Canada 9 14 9 10 7 4 8 7 High School 27 65 19 43 13 32 11 28 Some College 25 3 23 6 12 16 14 10 College Graduate 34 13 35 8 43 9 40 11 Graduate Degree 1 2 1 2 2 7 5 7 4 3 13 31 23 32 22 37 100% 100% 100% 100% 100% 100% a o t Reported 100% 100% F~om FIGURE 3: EVUCATIONAL Viekmann, RE~UIREMENTS R~~. 1 o Experienced Programmer Programmer Trainee Non-Test Test Non-Test Systems Analyst Experienced Systems Trainee Analyst Test Non-Test Test Non-Tes·t Test 6 10 6 10 5 8 7 8 High. School 16 32 6 25 4 17 3 15 Some College 27 24 19 25 10 14 7 17 College Graduate 37 32 53 27 50 39 48 36 3 1 4 0 4 1 10 3 11 1 12 13 27 21 25 21 100% 100% 100% 100% 100% 100% 100% 100% None Specified Graduate Degree Not Reported 0 Fltom Viekma.nn, Re.tS • 1 FIGURE 4: COMPARISON OF EVUCATIONAL REQUIREMENTS FOR ORGANIZATIONS USING TESTS IN SELECTION VERSUS ORGANIZATIONS NOT USING TESTS (UrU:te.d Sta.,tu Sample.) o , WWP'"em!BWU"· PP"fP&§"* fl FREQUENCY OF USE* United States Canada TEST NAME VALIDATION Studies (Total) GENERAL INTELLIGENCE TESTS Wonderlic Personnel Test Thurstone Test of Mental Alertness Otis Tests (Unspecified) School and College Ability Tests (SCAT) Wesman Personnel Selection Te$t Ship Destination Test Lowry Lucier Reasoning Test Combination Concept Mastery Test Henmon Nelson Tests of Hental Ability Schubert General Ability Battery 60 12 11 5 3 3 3 2 2 2 o o o o o o o o 282 67 83 4 6 7 1 18 4 5 2 o o 2 1 2 o APTITUDE TESTS AND BATTERIES c IBM Programmer Aptitude Test National Cash Register Programming Aptitude Test (E5l) Federal Service Entrance Exam SRA Computer Programmer Aptitude Battery (Burroughs Corp.) Employee Aptitude Survey Differential Aptitude Tests Watson Glaser Critical Thinking Appraisal Short Employment Tests Test of Sequential Instructions Minnesota Clerical Test Guilford Zimmerman Aptitude Survey Bennett Mechanical Comprehension Test 9 13 o 5 7 6 o o 5 3 1 3 4 1 3 1 1 1 1 o o o o o 5 2 2 2 2 *For Tests Used Two or Hore Times FIGURE 5: TESTS USEV FOR INTERVIEWING PROGRAMMER CANVIVATES: I 3 2 ! 0,'·· ,. FREQUENCY OF USE* United States Canada TEST NAME VALIDATION Studies (rqta1) PERSONALITY TESTS Thurstone Temperament Schedule Activity Vector Analysis Rohrer-Hib1er-Rep1ogle Personality Test Humm-Wadsworth Temperament Scale Edwards Personal Preference Schedule Cleaner Self Description Adaptability Test Guilford Martin Inventory of Factors Guilford Martin Temperament Profile Chart 1 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 2 o 2 4 3 o o o o o 2 3 3 2 2 2 2 2 1 3 INTEREST TESTS Kuder Preference Record OTHER TESTS Manhattan Symbol (MAZE) 1401 Autocoder Exam GCT LOMA Personagraph 2 2 2 o 1 1 o *For Tests Used Two or More Times F~om FIGURE 6: VicQmann, TESTS USEV FOR INTERVIEWING PROGRAMMER CANVIVATES: II R~~. 1 , UNITED STATES NUMBER OF ORGANIZATIONS USING: IN COMBINATION WITH OTHER TESTS: ALONE: CANADA 282 67 128 154 18 49 68% 58% PERCENT OF TOTAL SAMPLE: 93% 85% PERCENT OF THOSE USING TESTS: LEVELS OF TEST USE: PROGRAMMER TRAINEES: EXPERIENCED PROGRAMMERS: SYSTEMS ANALYST TRAINEES: EXPERIENCED SYSTEMS ANALYSTS: VALIDATION STUDIES: DISCONTINUATION: 278 138 142 87 67 27 32 14 71 22 12 F~om Vi~~mann, FIGURE 7: 1966 CPRG SURVEY IBM PROGRAMMER APTITUVE TEST ]F.M!.ld .. .#4# .. 74.244%. m o Re~. 1 11 o PAT Scores Supervisors' Rankings Percentage In Upper Half Percentage In Lower Half 69 & Above 64% 57 - 68 45 - 56 63% 44 & Below 58% FJtom RUnI.>t.e.dt, Re.6. 6 FIGURE 13: RELATIONSHIP BETWEEN PAT SCORES ANV RANKINGS -- BUSINESS GROUP o 330 "IPUM922!illI;r#tdHw t!ln C\ " Supervisor's Rankings PAT Scores Percentage in Upper Half 69 & Above Percentage in Lower Half 70% 57 - 68 45 - 56 44 & Below fJtom Rein6:ted:t, Ren. 6 fIGURE 14: RELATIONSHIP BETWEEN PAT SCORES ANV RANKINGS --SCIENTIfIC GROUP o 33J F"'rrmmrrRr,.. I Like PROGRAMMERS Indifferent Dislike Like GENERAL POPULATION Indifferent Dislike Aviator 67% 21% 12% 30% 36% 34% Mathematics 90 8 3 69 20 11 Solving Mechanical Puzzles 63 29 9 39 34 27 Giving First Aid 22 51 27 40 42 18 Progressive People 41 42 17 85 11 4 Conservative People 84 15 1 56 35 9 Energetic People 14 48 38 89 9 2 Thrifty People 45 44 11 74 22 4 Sell Machines 8 27 65 26 32 42 A B Few Details - Many Details Technical - Supervision ,~-,,\ ~~/ Indiffer- Prefer ent B Prefer A Indifferent Prefer B Prefer A 18 27 55 36 28 36 65 16 19 34 19 47 FIGURE 15: STRONG VOCATIONAL INTEREST BLANK INTERESTS OF PROGRAMMERS ANV GENERAL POPULATION BY PERCENTAGES 33~ U JrW'N" RP- WTvue BittbfB f ' c· TESTING - - - - - - I... TRAINING ---....,•• WORKING PREDICTORS GOOD QUESTIONABLE PROFICIENCY Programmer's Aptitude Test (PAT) BPKT Buchannon Logical Test (BLT) Strong Vocational Interest Blank (SVIB) - Basic Programmer's Knowledge Test EVALUATORS Temperament Tests (None)* (PAl) Programmer's Appraisal Instrument Watson Glaser Critical Thinking Analysis *Motivation, primarily FIGURE 16: 5 YEARS OF COMPUTER PERSONNEL RESEARCH ISSUES - '67 IN COMPUTER PERSONNEL A RES~ARCH EFFECTIVE EVALUATION PROCEDURES A STRATIFICATION OF SKILLS • NEW OBSERVATIONAL PROCEDURES • ROLE OF CREATIVITY IN PROGRAMMING FIGURE 17: ISSUES IN PERSONNEL RESEARCH - 1967 333 i'l !~ r--\ Vi PROGRAMMERS Like Indifferent AUDIENCE Dislike Like Indifferent Dislike Aviator 67% 21% 12% 85% 15% 0 Mathematics 90 8 3 99 0 1 Puzzles 63 29 9 25 65 10 First Aid 22 51 27 5 55 40 Progressives 41 42 17 70 27 3 Conservatives 84 15 1 5 80 15 Energetic People 14 48 38 75 24 1 Thrifty People 45 44 11 10 75 15 8 27 65 5 85 10 Few Indiff. Few Indiff. 18 27 Selling Machines ,~'~ Like Details: Technical Technical (vs. Supervision) 65 Many 15 55 Indiff. SUEervise 16 19 45 Technical 45 \V Many 40 Indiff. SUEervise 10 45 FIGURE 18: A COMPARISON OF THE RESULTS ON SAMPLE QUESTIONS TAKEN FROM THE SVIB, AS INVICATEV BY THE AUVIENCE POLL AT COMMON, VEC. 12, 1967. MOST OF THE AUVIENCE (WHICH WAS 75 PEOPLE) SAIV THEY WERE PROGRAMMING OR OTHER .SUPERVISION, BUT A VERY LARGE PROPORTION ALSO PROGRAMMEV WHILE SUPERVISING. THESE RESULTS ARE VISPLAYEV ONLY FOR INTEREST: NO CONCLUSIONS FROM THE SAMPLE OR INVIVIVUAL QUESTIONS MAY BE VRAWN. VBM/12/67 c ",W" MIWUg'W-g'WtHWlpUTIt"tlli DTSI c- II ~ame 1 2 3 Total 3 Games A.bel's 390 420 476 1286 ~aker's 419 501 427 1347 ~harley's 289 394 325 1006 Team this IB In lA each ID word IE letter 2D has 2A and 2E combination 3B For 3E example, 4A the 5E code 2A 6A 6B paragraph, 8A thus: lID beneath 6C word lOB beginning l2B letters 13E each l6A time l6B "a", l7E circle l8A the l8B 15 20B of 22C otherwise, 24A .4 halt 26A your 26B is 20C atS:t.x., ,.0' a l6C should 10E with l2C the l2D number 3A beneath 3C previous 5B first 7B combination 8E you 10D use 24B it. 3E sentence 5C sentence 7C of 7D the 9B first 9C of 9A have llA circled lIB sentence l6D begins l6E of l8D than 20E the 2lA third 22E word 23A in 23B the 24C third 24D for 26D next l2E beginning 14D greater 20D search 26C 4f.HRf.#,.'JA 1~" words 14C codeletter 18C the 22D "a." 28B ¢ ~.J;,tzI,'.":r ... all l4B of 14A Also, 15D letters 22B . code 8D the 7A code 2C has 5D this 7E occurrence 9D 2C, IIC Q9 number 20A ; In 6E a 2B code. code l3D as 28A th'e 8C the. 5A in 4E 41> it. 6D "code"; 10C Now; l2A 0 "has" word 4C circle 8B the lOA of 9E the 4B exercise lC word 24E sentences 26E its 18E sentence, l3A first 19A number 2lB the 23C in 25A the l5A with 14E with 17A beginning 27A vowel l7C word. 19B 25, 2lC "w. " l5C except l7D Meanwhile, 19C circle 2lD the 2lE if 19D code 22A sentence; 23E sentence. 25C with 27B the 13C letter 15B any l7B previous 23D this 25B circle l3B "u", 27C You 25D may 25E as 27D well 27E the 19E DTSI -2- 1 Game /I 2 3 Total 3 Games Abel's 390 420 476 1286 Baker's 419 501 427 1347 Charley's 289 394 325 1006 Team Observe 30A scores 30D of 30E teams 3lD in 3lE the 32D Baker's 33E If 33D team's 34A then 35C circle 3sD word 37C "the" 37D ·You 39B the 3sE "w" 4lC letter 4lB next 45D sentence. 4sE total 47E "40A" 49D and 49E with 55B second SID which 53D an 55C "n, " 55D the 36C of 42B his 34E this 42C those 44D last 46D higher 48B than 48C Baker's 48D Otherwise, SOB case 53E in S5E you 43B may 43C And 43A beginning 4sA tasks, 46E if 47A total 48E with 45B Abel's 47B then 49A code 54C underneath S4D r:". '\. I;t..J' the 4sC team 47C circle 49B and "42B" 50E 51A the 54B codes 49C unless SIB Abel's 52E lowest 53A all 54E words 55A sentence. 56B ·SI ~1i] • 91 ~Oi] ·~1 ~~~ ~l£ Oi]~ ~ZZ ~9£ ~£~ ·lZ ·OZ ·61 Oi]£ O££ VO£ ·i]1 ·£1 ·ZI ·11 ·01 01~ the 4lA circle 54A ·ll OZ~ with 40E than 52D Hl~ a~~ the 37B . beginning 40D less 52C ao~ O~~ of 37A "36C." 39A circle "·40B" SOC SOD ·9Z . ~Z ·i]Z ·£Z H9~ page. 33C highest, 35B was 52B this 56A at 32C the 33B game 52A lowest 5lE box 32B code 38E vowels, 44E your 46C 3lC circle 38D sentence. 42D for 46B 3lB occurrence 36E otherwise 38C words 40C th~ee-man the 32A of 33A () bowling 30C the 3lA second 35A .second 36D for 40B all 44C for 44B "42A." sOA in 53C end 42A And 46A was 48A was 34D under 36B looking 40A looking 44A score 47D game 34C paragraph; 38B the 4lE at 4lD halt 43E game, 53B this 38A halt 39E also 43D Charley's 5lC code 36A in 37E . now 39D may 39C third 34B top 32E the 30B alZ HlZ ai]Z V£Z ·6 ·S ~61 .~ V61 aSl Vll ~Z ·l ·9 .i] .£ ·Z ·1 0 "TIIWI"U??::" "" MW&iiHtiMi#fM"w-""r"iH 1 " T,2o ''1- Session No. o -~~-=------'-- iI~D Session Title: 'I L, P\ Chairman: (l. CVJ. (i.. T~~ ~.~ S/3c,Q R B f!.,QtJ GH ~. ~. G~ Speaker: Topic:: ~~J e-J.. ~J£. ~ 1130 - S/3bO Sununary: S~ ~ ~ R 1/30 ~.() ter L ) 1<4- 0- fJ.A.-(. ~~ (~~ r~~ -J~ i ""1f,;:t:j "- S/3Go (;1{) CJY .-fc-.r-}£=--.Q... :Z:-/$th IfdV/JQur- Speaker: _________________________________________________ Topic: ___________________________________________________ Summaryi ______________________________________________ ~ o Speaker: ______________________________________~--------Topic: ________________________________________________ Sununary: ________________________________________________ NO. OF ATTENDEES: )JeT I< 67V~I/~O ro IJA /) f)a-.& : '. l ~ (' '-...~J u.. (.' '.-" . 0. 1•1 ., 33) ·1.1'~ 1..1 30 'As 'R rE .. mIAl~~ o FoR. S 3~O THE USIIJ&. S YNeHI.O~OUs o 0, -~ _._---- o • 5 ~ - YAle\iR.o~ou..~ T1llt ~ s IV\ " I .. lte.eE.I" ~ ( S,..1t) o· ,:&'~l\R.Y s 'I ~c." ..o ~Oc.L~ eorY\.W\, Y.Wl e. ~"lO N tlSC.) o 1130 Type I: PR06-RAmS STR "St.ATJ. BS'- ·Sc.RT.t ·SC:AT3 o -REMOTE ~o8 ENTRY .. WOItt( SrRTloA) Pflo'lAM ·'llO/:l2.GO trt.f1l'tt.~ S\l~sYSTEMS o me:, SCHT..1 o STiil if 11 "JlILR 8LE: No W *I NTE~~CA.f'r SLt15~OtA.T Sl: k"\C-E (xss) tAlE -* POINT-IO- -POINT COWl WlUN I C.~I' 0 ~ ~ Sta)\TC WEb 01t. kE~sEl> NETU)oltK -* '1- OF- ~ -, RllNS",'SS\ON Col>E (nrilX. ''I )11-'» C"1t'R.ll~-( E~S) " .:p,,4J1ig&1$& M. , SIi!E: 107' ,$2ZZZA ... . ..... 44 on. • _ - • , .' I I" ",',. """ .. "II "" ",,,"; ..,.tL·.">LI1II.oD'r-I,,:AI=,,."':;;illJaw~.... .. ST~ SCl\T.1 StA.Y"Ol.,.E» .:z:SM sYSTEMS: 5/3'0) MOl>EL ~fOJH,~'5i'~ 7St&)\Tt\ T\\E ~-Sft\ 2. 70 I DftTil lfbHPI E~ U~IT ~Q\l.\ -P~EJ) W'I"" 0 Sy~C\\ ro~OtlS ])1)11 Db ~¥'·E 1l. - TYP E: I .. ~"BM 5/3"0, EQ\l\~?Eb C o~ W\.. mobEL ;1.0 \O\T" ,t\E \L" \e..'AT Rbll"PTElt 10 A\ S (-%073) 0 3l/~ ------------------------- - c SC 'AT i SoFT\l)}TRE STR SYSTems: $/3'0 '8Os/s ftS TYPE I PRo(,.Rllm RU H 11. ~8LE: ,\)ow 5/3'0 Mo1);lO CXOCS T'IPE l: -PRO.ll Rm R Vll\L.RBLE.: ~ow 5/3'0 o ])OS/o~ Sl1lllm ,.ype,.II: ?~O&~llM R'J ft IL lTBLE: NOW o o o '"fI'M o SC~T.i t.fl LLEJ) STR BY FI N L'RtJ'IlRfE fJSSEW\&LY PRot;. tt" W\ 0 LIBF be })C-. be SC,RT.i (Co~IR.OL PflR.lJ~ (r/o flnll JJ}])~~ (E'RRoR ~Cl~,tlE Hl>1>R.ESS) o _.- ... -~-----.---.~~- ~--~.-~------~ J:bEFIL STR com.U ~ '(..BTIO~ ,~ IBm FOllTRl1H • 8eb, EBeb Ie, IINllR Y :r/D! I Type .m P~o~R.1tm AVRIL-ABLE: /tocO c FILE $I:- 1130 -oJ. t. OO~ FoR. TME Z8M "~o FOR.""9~ LtS£R. o o SC~T4 .". R~ R'l.RBLE: Now * .r~T~lkll'T SE ~ V leE SUBloll'" AI E * Po I ~T" ,,0... (Zs.s) ft'" NT 1t S"-'IT~tlE~ DJt LE9SEb o ~ET"'OR.K 1i' TR.1tHSn\'ss",~ eo:DE .. A\OR."'9L Ea~J),e... · F"U.~ n9Als"9~EtJ" -If 51 ~ E: 1o,," s C. ~T a "# "-IJla.ItB&.E: B$(.\) Now -'I- %"TE~1tu.'T S&Jt.",e.£ SI4~R.oilTIA\E (Z5S) -If "'ULTI'" ?OINi TRl1SIlTJl-tty STi1rIOtJ LE RSE» ~'ET u>o 1t"-. -If T1ttI ~s W\\SS It) J-) CD]) E * .~1tW\llL. E~»Ie-. • FUL.L- I 1t1l~S~~1tE~"- c o $ c AT.2.-SCHT3 .s YsT5 ,"S StlPPoiT~) .". J: a WI S/3'O} ItIOJ>£J- !OJ ~ Sl)) ,~ 7 • k).rtf IBm o ,se., ~ 'f)1 s- 1>JfT~ Rl>"PT£R uA)IT kJ I ,. If 51) R - Jr elA)lTH .Ism 1703 Tl" NS Vl \ \, to H c:.oN'BOL. c UNIT fA) ITtf SYNC,NloA)OU S ~ftSE J: SC.HT1-SC.ltT3 SoFTWaRE ,~ SYSTEJI\s bO ~ / aT" m R\JRILftl'-E: HO'&) $ / 36 0 .,. Sf 3'() os f ST R tY\ A'l"'L""lE: R'R,I~ 0 30) '" o * BY fJN RSSEmBLY LR~'''1tG-E CBLl£) P~O&-ltliM -IIo TR.lf~SM\r 4 ltEeE,\Je · 'P~ '""2.it M S?EC.lFIEb I/o 9't.EllS 1> RT'R O\)E~ L.JrP-PEl> O"PER.1rTloAl UlfrH OTt\E"R. ~ DEVICES o F\lLL-"'~DA\S'Pi11tE~T TEXT 1I~1tESI"\~TEb OF l>ftiW eob .N(;- t&).-rtl,N MESS'RG-FS '&-RO\l~b 't.u.L.ES' u-)E.l ( -1)EFI~E.b ERltDit C\\EC.\(, ~G­ c."R.~- .~ 1\\ llL-Tl- \Co -Pol~T o I 0 o ~ Eft\OTE :ro~ E"'TRy WO~~ S"'~I'O~ () ?1l0 ~ 1t.H M o .... """"'M\i;:;·,~.· ..L1i&ii!l?ii!'.:;y¥.¥.".!§!i..,!i¥i.i ___ .€ ·,·· ...-··f··.. ··.HM::.".,p.LT,4,('!t,t.,J.M!fuYiMiti.i ,.Eli,., , • . !Ii.......ii4#¥4 ... . . ' "".,. ". ,_,,' ·'''.I~.;;;;gkn;r;g;m!l2.:GIH1lhira'''''l\IuiiIiilIL\iWm:wasaawwaaac C.E~"~1=IL.. 5/3'0 STRTIO ~ = OS/Jt.~E R\JRILRBLE: fto I~T-'-0- -po I ~T ~",-y 31) 11~~ c mUl..Tt-- rOI~T Oe.To~ER. II!O b I S I<.. "Et;StO~ 3\, 11' r W\O~ ,TOil. I' o 0·" , I Flt~TtO~S • .x~¥~T oF~"B * COW\R\ RA\hS £~,ll'Es -rK~\l. 11 AJ R'" fKt\El> :rA)-PllT l>£\l teE o· ])IlTB nll~SW\\SS'ON .0 4. F~W\ • t&\~fTl ~'- of c:.EA1-~lfL. 50'& O\A..\? IA..\ 4 MESS'9&-ES To OCA..,p'4:r 1)E\l'~E~ o .~--~~"""""-.",,,,,,, - .. SoLE KE YI..OIIIiIiIIIR-.-.. ''''''-----' .. o o o o ~E(!L. -SAW\~ ~1l~ FOR.. I ,~o S'-HTlOtJ ~~ sea, o Exee:~T • • 1)JJIB s/a~o RTlOJl Fo2.. 1)11\ S, c... •• 1>1l11l bft\S, b,XBl1ll) ~88B o SEc:to'L In>b~ESSl ~Loe.K eOu.~T---""""" c..O"l10~~L) 351 "~o It. ~E U)~SIj BSEo .! ~Eeo t.l) S / sec.,." t. · o i I 35,J ~.---.-----~-- - I o \\10 'k-SE &E~e.k.ltT-\O ~ /1 XE£ Il-S E 4J ell l 'N E. ~ ) \A ~X ITa SE~ToIt. Fo~ ,-, 'V\,,..~ \AS £ It- JM' bia~~ --... STl>~I~_ b,-.e~-r~)) &444. btl"" "-0 -,." e E" IT o 355 I II~O R.~£ E~ EC.\A.TlO~ /1 X£Q. •• R~ R.~E SrART '3"ECl- ST~TEMEAlT~ t 05/3bO ~O~S •• o t~ENb o • E~TER. ~OB ~O~~ XA10 ~"'1t..EHW\ • EQ\1.\~n\E"'tC-E ~"'k.fl L I ~ a.l\O~ o • COlV't~TI ~&- ?Ou)Elt. oA\ R ]) EMit ~b Rlrrt\ E~ ~llSl S T"ll~ llE~U.Lll~ • St\ "RR\~(i. 01= ~ e.OW\.ft\..o)-\ o "BobY OF :LN FO R M It\lO~ 30/ ' - - - --- --- 'I~O - --- ---------::....::......:-.:.---=-=--.-.--=----...;..:.-.--.-.------:..:.:.:-..:..-.:....:-..:..:..~-..--.~:...... -~-=------ ~-SE. ST1to~&- -.---~--~,.'.,.---- aS6 SYSTEm 1>\sa,~ L'~E • ~o~S ~E(i.u.,'~I~Q- MPI Y e~I4~E -:S-08 FL.Ou.\ • 'So~s collE SET--,,}' SYS~£t\4. -ro ~E "I'S&1 ~EQ\l.\1l.,tl~ CR~ 1t- tAT of e.A"~E Jl s/Ale£ tttDC.ES51~- IS bELl\YE]) U~TI&'" C-ORE.. IS SYSTEM ?1tJ)~, E~ R-\Jlt I '- ~8L. £ I I D 22 '0 G~HP\-\!c... o SU~S YS TEMS 10 I ~. - ~-j *RVll'Lll~E: FE\ IS, "~' if FI~Ell-~ OF SCA.l'-p.o1l.' . • 'PRoeE~~-tnlb--PRoc.ESsol. l>lin ) R.Ti~s M'S~ \()~ 0 * ! i • )liTW c.oM~ll'" \ S \L...,.y S£l.",e.ES+ • S'fIT £ L.LI'E & ltFt? \-\ tc:.. -:SO~ ~1'to C!-E sso R... o .1 36L/ ,~ II c·I~' I) 1130 /2..2. S D AJETtuoR-K.. '* t 5/~~O n\obEL WI 5"6,' 5;7 kl.-rtl 4.701 ~R. a70 l. '1'\0 - ~ t<. oJt L1tk'-E lit o l&)\-rtt- se.R J)\I~ ~IS" * Po, ~r- 1-0SU), -w-" tt-£b ?o,~, oR. LEft.5£b .:CF SCOt ,-c.tl£b.l U. ~ER REQ. u.\R..U ~ llSE o ou) ~ ~ 1t.o~Eb E51i1a L. tS H u.1t..&~ ,-0 c.o~ Ee..-rIO A\ , _~ ••___ '_~'_"."' .•"_''''_"'- .. _, ..... ". ,. -" -·,...... _.,,_=,~==."'""~,",,'"'''''~'-=,,==--=_='''" . c:c.=..::c_,,_.:.:,..... ,.: .... :...:.............__ I PRoe e ss.t> 1ie.. ..10-~ft.O'-E.S~d R )ft,..~ OJ k ft~SMl ~Sl~ • Folta ..... tlE. FoR.I1t.."~ - ~I~ 1 L..l\k. :C,,'" AI 1"0 u..~E~ 'b i\-rJ\ . nft~~M.l~~IOA) 5u..~-.o&A.Tla)L~ F()ll II~" R~~ S/3'0 • HO .bETftIL..Eb K~Cl)L.El>'-e: OF ])ITlI u~K noC,E)UlE,So , , S »EEbE,]) Oil'S() /22.$ b r'(1t~S W\\~~'O ~ ~lA,~ItOU.-r1 ~ S S a.TH IT-- ZfJITIRLI2E. FIJR. COMMUN I e9TI() A) o ~T~El>- .. IlERb )JtTR &T IAltlT - - (A)k\TE. bHTR ~re'-T - ... CDAl-rR.D1- 'rES'" ~TEAlb - - o EAlb COMWlUAJI~F1t/dAl 11~()/22. S tJ l>~'-R ~M.~ftrl 'atLI~Y SER..\J • ~I t :0 \e..E~ CoA)"ER..~'4A1 SCA.~~OlA.\' tJE ~ 1-0 ftWb F'Ro~ \\-"0 A-Nb S/-sitJ 1>R}-R b Rift • ALL. FO Jt.. ~ 1\-reOAl\JER.S,O#J 'E~F01tft\Eb IA.\ is 5/3'" c, 3~ ! I " 3D/.t2. ~o o SFiTELL.,rE ~R.RPM I~ -:S-o_ ?1to~e.sso~ • E~TEA\SlO~ Toa o PtOC.ES~oJt • $/~~O usn ~O_ eOA\1-)tOL R-TTACHEb R£ MO-r E • l> E F I a.\ E P£o~Ril'" '-0 .. R "~" Ff 5/"'0 -ro ~~~U~t..Tlo ~ R-~ ~~ltPtl It.. OF Ru~ IAJ "'l-ret "~O ~b"tll1 M 3t,9 II~O/22~O • bEF I~E. lt~l) o :tNttl~YE ~o~ ~ TO 1t.\L~ :r~bE ~ S 1\\ bE~tL.'/ :rAi 5/36>0 • ReQu.E~~ -S-o~ C!.o~.,lt.dw %A)Folt..~ft"'loA\ Fbm. A USe ~ -rKt.ou.&H 'R SERIES OF b,sPL.RVS • ar lO I '/ II~o /.1.2. ro 1t. & rAO -r-e Ysrs,m S v ' RTTAC. Me) ~D" S/3'O ' S o Public Service Company of Colorado Uses the 1800 Data Acquisition and Control System in Gas Load Control o By Earl E. McLaughlin Jr. Public Service Company of Colorado Presented Before the 1800 "Common" Conference San Francisco, California December - 1967 o ABSTRACT The Public Service Company of Colorado, a Gas and Electric utility, has installed the 1800 Data Acquisition and Control System in its Gas Load Control Center. The Gas Load Control Center has the responsibility of regulating and maintaining system pressures, contracted gas purchases, and gas storage facilities in the Company's service area. The computer system is monitor- ing variables from the field, logging hourly flow and pressure data, and controlling system pressures. This paper will explain the necessity and benefits of a real time computer system in the dispatching of natural gas. o 3?~. \ rna o CONTENTS Service Area 1.0 Gas Supply 1.1 Purchase Contracts 1.2 Gas Storage 1.3 Industrial Customers 1.4 Pressure Systems 1.5 Weather 1.6 Gas Load Control Center 1. 7 Computer Configuration 2.0 Telemeter Input 2.1 Data Checking 2.2 Data Processing 2.3 Operator Inquiry and Entry 2.4 Gas Load Forecasting 2.5 Data Logging 2.6 Low Pressure Control 2.7 Physical Planning 3.0 Future Planning 4.0 Computer Output 5.0 o 3?3. 1.0 SERVICE AREA Public Service Company of Colorado and its subsidiaries, Western Slope Gas Company, Cheyenne Light, Fuel and Power Company, and Pueblo Gas and Fuel Company serve natural gas to approximately 400,000 customers in Colorado and Southern Wyoming. Natural gas is distributed in the Company's service areas through extensive transmission and dis- . tribution systems. A general system map is shown in Figure 1. This graphically illustrates the great distances and rough terrain that must be encountered in order to serve our customers. An example of this is the Western Slope Gas Company, Southern Division, transmission line that is 449 miles in length and crosses the Continental Divide five times. 1.1 SUPPLY Gas utilized by Public Service Company and Western Slope Gas Company, Eastern Division, is purchased directly from Colorado Interstate Gas Company. Gas for this area is transported by Colorado Inter- state from the Texas, Kansas, Colorado and Oklahoma gas fields and from San Juan gas fields in the Four Corners area by connection with another pipeline company. This represents an investment of over $202,000,000 by Colorado Interstate to serve its customers. o Public Service and Western Slope represent over two-thirds of Colorado Interstate's business and have a direct relationship in establishing purchase contracts and rate structures in this area. Gas utilized by Western Slope Gas, Western Division, is pro_ duced from gas fields in Western Colorado. The Western Slope Gas Company, Southern Division, produces the gas it needs from the San Juan gas field in Southern Colorado. 1.2 PURCHASE CONTRACTS Gas purchased by Public Service Company, Cheyenne, Pueblo, and Western Slope from Colorado Interstate is purchased under a two-part rate, consisting of a Contract Demand charge and a Commodity charge. The Commodity charge is the unit price on the actual volume of gas delivered by Colorado Interstate and the Demand Charge is the charge for the maximum volume of gas Colorado Interstate is obligated to deliver on ~" the peak day. 1'1 I;" "I I' ' \\\ ----.-.-. ~YC!MING L I '\\ _ GRal'r PIVER V' @ \ NOV \. -'-'-'- -"BlEROCK FI_EL_D_ __ - \--r-- _ LEGEND \ • - • ~ ..tLARAMI£ o F , ,.......RAl6ELY ~ '1'''---', I : N OOUGl AS ~ "-, CREEK FIELC' 1~Ss/ L f ytJt:N GAS('\,0 STCF.AGf. '\J ~ (.!ENVER ~ /~F'T \ .~ ../ / ~Y~.~ . WESTERN DIVISION FIEL~ L/) MORGAN / ST')RAGE 1--------- E<%::f::;:'>'<;:; . .' ~..::;;::3% \~. ~'::;;,:,~.--::: ~~;<;/% I 51> N GAS JUA",-:;: FIE L C /'. "i:p~0:/:/!~~!r;<;:; ~%/.:?'.:;::.' , '.' , . W::/ .. 1 ./. NEW MEXICO ~~;: ....- I I ~ "-.) <.>, 1 CJ) FIGUR- E J.. SYSTEMS ..-o ....:J MAP I en I. TAHT Public Service and Western Slope are required to pay the Demand Charge on 100% of the Contract Demand each day and the Commodity Charge for the gas actually purchased. Penalties are charged the Company in the event that the Contract Demand limit is exceeded.. o As' example of a sub- stantial penalty, in 1963, Public Service and Western Slope paid in excess of $785,000 for gas that was purchased over the contract limits. The justification of such a rate structure is based on the wide range of load conditions that occur in the Colorado area. On July 16, 1967, the mean temperature was 65 degrees F. with a 24-hour gas load of 107,000,000 cubic feet. January 7, 1967 produced a load of 565,000,000 cubic feet with a mean temperature of 16 degrees F. in Denver on January 11, 1963, was -17 degrees The mean temperature F~ It is apparent that pipeline capacity required to meet peak winter needs becomes idle during warm weather. The two-part rate structure is needed to protect the pipeline's large plant investment that was made to serve areas during the peak load, while the load factor is at a minimum due to conditions such as warm weather. 1.3 o STORAGE It would be an advantage to Public Service Company of Colorado and Western Slope Gas Company to offset the varying load conditions by increasing the purchases from Colorado Interstate during off peak periods and decreasing the purchases on the peak day.. This can be accomplished to some extent by storing gas during warm weather and withdrawing the same gas from storage when needed in cold weather. Public Service Company has converted an abandoned coal mine near Denver, Colorado, to an underground natural gas storage reservoir. This project, called Leyden Storage, is capable of storing 2,500,000,000 cubic feet of gas of which 1,250,000,000 is considered usable for peak shaving at a cavern pressure of 250 psig o Leyden i.s connected to both Public Service and Western Slope service areas by a network of intermediate pressure systems (50-150 psi)~ An agreement also was made with Colorado Interstate for storage gas from its storage facilities near Fort Morgan, Colorado, to serve the Denver area. Both of these storage facilities are used during the heating season to control the load curve of Public Service Company of Colorado and Western Slope Gas companies. o A typical 24-hour winter load curve is shown in figure 2. o For this particular day, all industrial customers were curtailed and 107,046,000 cubic feet of gas was withdrawn from Leyden storage to maintain the contracted limits. 1.4 An average hour load is shown by the line at 15.6 MMCF. INDUSTRIAL CUSTOMERS Industrial customers in our service area are under contract to purchase interruptible gas. Interruptibl~ Gas is gas that is available in excess of the amount required to serve the firm customer while still under the Contract Demand. The interruptible gas is sold to the industrial customer at a rate that is less than the amount paid by the firm customer. This rate class justifies the installation of a as, propane or standb~ fuel system, such oil~ When the predicted load in a service area is estimated to be greater than 100/ of the c.ontracted demand and above the amount that can 0 be supplied from storage, the industrial customer is given notice that he must curtail the use of natural gas and switch to standby fuel. When the daily load decreases to less than 100% of contract, the industrial o customer is notified that he may resume the use of natural gas e There are over 450 industrial customers in the Company's service area and every attempt is made to keep curtailment at a minimum to optimize purchases and sales. The industrial load is approximately 20% of the contract on a cold day. The load curve that is shown in Figure 2 is with all of the industrial customers curtailed. 1~5 PRESSURE SYSTEMS In general, there are three types of pressure systems--High, Intermediate, and Lowe The high pressure system is used for the trans- mission of gas over long distances to 1,000 psig. G The operating range is from 200 psig This type of system is usually a function of the trans- mission or pipeline company, such as Western Slope Gas Companye The high pressure system terminates at a city's town border station. A town border station is the point where the distribution company purchases gas from the transmission company for its systems o The Denver area has six major purchase stations e Intermediate pressure systems operate in the range of about 20 to 150 psig. Their function is to carry the gas through the market area and supply all of the city's district regulator stations o In the Denver 8?? li~- ". , i : : " ; I' : " ,., ". ,. , '=' ., " IQ 'J + 18,00 17,00 :::-;- 6,000 :J .. .-:- Er1 ;\ r 15,000 4.000 : 3,000 2·rnnr ,. " " " 11.000 ,-,-:, , " 10 ,000 ' ';0' ,. ~, 0: \01 III III 9 pOO bI .J III I- "- :z: 0..: ~ ... '" III o u :.: 8 ,000 ,., pa li " !+ W ell , :r.: h H ~ ; I 7,000 _III , r N " Xx 'l'l ~l i ~~ ;; W'" 1.1: I I. H rr' '. I;:' rr .1 ~ -; .i T.l.. " ~! • i-r- ,'f: 1 2 3 4 5 6 7 8 9 10 II 12 I PM 2 3 4 5 ~; t\- H AM ' rt 6 7 l, 9 ;f~ : " 10 II '.1, 12 MID 3?? area, the intermediate pressure system connects most of the town border stations with Leyden Mine Storage. This enables peak shaving gas to be injected into the intermediate pressure system which will result in decreasing the purchased gas at the city's town border. Low pressure systems can operate in the range of 2 psig upward to 60 psig. Their function is to distribute gas to the individual customer. All of the pressure systems, along with compressors, valves, and regulators, provide a link that is hundreds of miles long which connects a customer in Colorado with the gas fields in Texas, Kansas, Wyoming, Oklahoma and Colorado. 1.6 WEATHER Colorado area weather is the largest factor in determining the gas load. Weather forecasting and gas load forecasting are necessary to predict gas and pressure requirements. During the winter, it is not un- usual for a morning to be 60 degrees F. with the sun shining and by afternoon of the same day have the temperature drop to 10 degrees F., with wind and snow. This is caused by a storm front and, unless the front is pre- dicted, requirements for pressure and volume would be greater than the 4() system could produce. 1.7 CONTROL CENTER Public Service Company of Colorado, Western Slope Gas Company, Cheyenne Light, Fuel and Power Company, and Pueblo Gas and Fuel Company operate a Gas Load Control Center located in Denver, Colorado. This center is manned 24 hours a day, 7 days a week, and has the following responsibilities: 1 - To calculate and log all of the hourly flow totals from metering stations for all four companies. Pressures, differential pres- sures, and flowing gas temperatures are telemetered to the Load Control Center from 32 major metering points located throughout the combined service area. This information which totals 114 different inputs is used together with various factors to calculate the gas purchased each hour at each meter station. The formula for the calculation of gas through an orifice meter is shown in Figure 4. A drawing of an orifice meter is shown in Figure 5. o 2 - To monitor and control (via phone conversation) compression facilities of the Western Slope Gas Company. Pressures from points locat- ed on the transmission lines are telemetered to the Control Center. This 3?~ Q=FbFpbFg [1+(.68462-.26923 0= RATE OF FLOW IN g!)(21~PA)J CFH QR=RATE OF FLOW IN MCFH = Q/IOOO= [JhPA+b (aPA2+bPA+c-I)(~)4.825+ W J 1+ 2~7PA ]:,767 Fb= BOFB =BASIC ORIFICE FACTOR J~~~OOO Fpb=PBCF=PRESSURE d=DIAMETER OF D=DlAMETER OF BASE CORRECTION FACTOR FROM 14.73 TO OTHER = 1473 . = Pb ORIFIC~J~~~" PIPEJ!~ 1 5 d4 _ I.0229:14.4Pb I.Q055=14.65Pb .9804 -15.025 Pb J 1 (.68462-.26923~)-D4F]o h=H=DIFFERENTIAL IN INCHES OF WATER AT T(60°F) 1,00· P=INPUT PRESSURE FROM METER STATION PB = METERING PRESSURE BASE PA=ABSOLUTE STATIC PRESSURE PSI = P+14.4 ]'014.4 (ALL PRESSURES ARE SET FOR 14.4 NOT AVERAGE BAROMETER 14.4 t> =BPRIM = CONSTANT FOR REYNOLDS NUMBER ].'01 a 0= b= ) SUPER L ] '10-6 =0.000,000,046 COMPRESSIBILITY J~o-6 =0.000,148,500 FACTORS c= ] :0-6 = 0.997,300 T= TEMPERATURE OF TA= ABSOLUTE = T +460°F FLOWING GAS TEMPERATURE ]~O·F (RO) OF FLOWING GAS G=SPECIFIC Fo = SPFG = SPECIFIC GRAVITY FACTOR = FLOW· SUBROUTINE VALUES PLACED IN COMMON BY Vv ~J 1.../ THE /IiG ]!::; J~ CALLING ROUTINE: OR, P, T, H, BOFB, PBCF, SPGF, D4F, BPRIM VALUES PLACED IN COMMON BY THIS SUBROUTINE: OR ~ C FIGURE 4 0 o o DIFFERENTIA~ PRESSURE ACROSS ORIFICE PLATE TO CONTROL CENTER GAS PIPE LINE GAS FLOW ORIFICE PLATE TO FLOWING GAS TEMPERATURE CONTRO~ CENTER SPECIFIC GRAVITY ~ 0() " STATIC GAS PRESSURE FIGURE 5 METER TUBE information totals 39 input points. The operator can take action by ordering pressure output from a major compressor station or by notifying personnel in the area that needs attention. 3 - To monitor and control intermediate pressure systems in the Denver area. Pressures from points located on the intermediate pressure systems are telemetered to the Control Center. 42 input points. This information totals Control circuits, which set or regulate the pressure system, are activated from the control room. This totals 38 output points. 4 - To monitor and control low pressure systems in the Denver area. Pressures from the low pressure systems are telemetered to the control center, totaling 61 input points. Control circuitry from the control room to a regulator station enables the operator to adjust the regulator's output to satisfy the demand on that station. There are 54 output points from the control room to various regulator stations. 5 - To operate all of the above pressure systems in a manner that guarantees safety and service to the customer without interruption. 6 - To control purchase rates from suppliers and storage facilities maintaining optimum system requirements without exceeding 100% of the contract demand. This requires the operator to estimate gas loads, weather conditions, pressure requirements, gas storage needs, and industrial loads throughout the operating day, and make the necessary decisions based on these estimates. 7 - To provide management with reliable operating statistics so that the t"uture growth and operating guidelines can be determined. The operation of a control center of this size requires that the operator maintain constant surveillance of all variables in the control room, calculate the flow rate for all meter stations, and predict the weather and gas load for storage requirements and industrial curtailment. With these responsibilities constantly increasing due to the continuing growth of the Company's gas service areas and more complex storage and system guidelines, a method was needed to relieve the operator of the time-consuming routine jobs. The time saved could be devoted to weather and system analysis. The 1800 Data Acquisition and Computer Control system was installed in August 1967 in the Gas Load Control Center. The computer is assisting the operator by providing a constant monitor of all system -----------_ ...._.. _._- ---------.--~-- o 3?3 pressu-res along with flow calculation and pressure cont1;ol. This system is also providing management with valuable statistical information and a higher degree of accuracy. the systems control. The computer is enabling the operator to optimize The chance that the 100% contract demand figure will be exceeded is much less and a higher load factor is being achieved. The computer's speed allows all the pressure inputs to be scanned at a continuous rate and if an erroneous condition occurs, it will alarm the operator as to what values need his attention. of safety is obtained in pressure control. Thus, a higher degree The computer is able to regulate a station's pressure output at a more constant rate than the operator can, which provides a lower average pressure throughout the system with resultant benefit in reducing the volume of lost and unaccounted for gas. One of the most beneficial aspects of the computer system's ability to handle the routine duties of an operator is that the operator has more time to use his experience and knowledge for planning and supervision of the overall system. The computer's data flow and configuration are explained starting at 2.0 o o 0," ,'"i ~~---~""~---"-- GAS .. ------"-."..........-------------------- PIPE LINE ------------- PRESSURE CONTROLLER o CONTROL PRESSURE SETTINGS REPORT t::t ERROR CONDITIONS 1800 COMPUTER SYSTEM ANALYZE ALL INPUT DATA RECORD AVERAGE HIGH LOW READINGS CALIBRATION OF Transmitters OPERATOR INQUJRY MANAGEMENT GUIDELINES CALCULATE GAS FLO\V THROUGH METER STA. HOUR a DAY LOGS PROJECT GAS LOADS REPORT PROJECTION FORECAST GAS .LOADS FIGURE 6 TIME SHARE a STATISTICAL DEVELOPMEN REPORT LOAD t - - _.... FORECASTS c 2.0 COMPUTER CONFIGURATION ~) The 1800 computer system consists of the following: 1801 Process Controller - 4 micro-second-16K Core 12 Levels of Interrupt 2 - 2310 Disk Drives 1442 Card Reader 1443 Line Printer 3 - 1826 Input Units 2 - 1053 Typewriters 1816 Typewriter - Keyboard Timer A - 1 ms Timer B - 8 ms Timer C - 8 ms 10 PISW Words on Level 0 10 PISW Words on Level 1 IBM "Time Sharing Executive" Operating System The computer's General Data flow is shown in Figure 6. The explanation of the software and hardware used follows. 2.1 TELEMETER INPUT The American Standards Association defines the word "telemetering" as "the indicating, recording or integrating of a quantity at a distance by electrical translating means." There are many types of telemetering systems available, and Public Service Company uses an impulse duration type. This system includes transmitters in the field and receivers in the Control Center. The transmitter contains a measuring element, such as, a Bourdon tube. This element is attached through linkages to a cam follower. The cam follower rides on a linear cam that rotates 360 degrees every five seconds. The pressure in the element causes the cam follower to be positioned on the cam in relation to the pressure in the element. The cam follower is connected to a mercury switch and when the follower is on the cam, an electrical circuit is made. is broken. c seconds. When the follower is off the cam, the circuit The transmitter generates an electrical impulse every five The length of the pulse is determined by the time that the cam follower is on the cam, which is determined by the amount of pressure that is applies to the measuring element. If the measuring element is ------------~~~-.-------~-~--~ .." . _" ...... ........."...._-_ ......._--_.._.. .._._--_._----_...." " ...... a Bourdon tube that is connected to a gas pipeline, an increase in gas pressure will cause the Bourdon tube to expand. This expansion will move the cam follower to a higher position.on the cam which, in turn, will generate a longer time on the cam or a longer electrical pulse. A trans- mi tter is shown in Figure 7. This pulse is transmi tted over· telephone lines to the Control Center. The pulse is connected to an electrical receiver which positions a recording pen on a chart that is in relation to the pressure on the transmitter in the field. The length of a pulse will vary from one second (0% pressure) up to four seconds (100% pressure). See Figure 8. The Control Center receives 250 different pulses from points located on the gas system every five seconds. The distance the pulses travel varies from one mile up to 500 miles. A method of inputting the values from the transmitter to the computer was needed. al input system. At first we planned on using the conventional digit- Various programming techniques could be used but all of them required the computer to scan the input data every 3 milliseconds (ms). The 3 ms scan was needed to maintain one tenth of one percent resolution on a 5 second input (out of the 5 second pulse, 3 seconds of the pulse are used for full scale, 0% thru 100%, 3 seconds .001 of 3000 ms = 3 ms). = 3000 ms Using a 4 micro second computer, it would take longer than 3 ms to scan the inputs. If the computer's speed was in- creased to 2 micro seconds, more than 50% of the computer's time would be spent reading these inputs. computer was needed. A more efficient method of input to the An input system using the power of the 1800 com- puter's interrupt structure was developed called "Time Duration Telemeter Input". Time Duration telemeter input is intended for use with time duration signals that have the characteristics of a starting time, an elapsed time, and a stopping time. through Process Interrupt words. account of the elapsed times. Input to the computer is achieved One hardware timer is used to keep If Time Sharing Executive software is used, one modification to the Timer Section is needed. This modification enables one timer to run continuously without requesting service. A signal that is sent from a transmitter is shown in Figure 9, Part A. Here we have a starting time (A), an elapsed time (X) and a stopping time (B). If the computer is interrupted at point (A) an in- terrupt servicing program can record the time of the interrupt using __ .......... _•.. _._...__._-_...__._- "I o o FIGURE'. TYPICAL _ __ TRANSMITTER WITH TIMER PLUG ATTACHMENT RI4A AND SCALE PLATE REMOVED CODE TO FIGURE f. 2. 3. ij. o 5. 6. 7. 8. g. 10. II. 12. Locking Screw Bear i ng Sc rew Lifter Plate Fixed Arm Cam fndicating Pointer Zero Adjustment for Cam Fo II owe r Locking Screw Span Adj ust.ment for Indicating Pointer Linearity Adjustment for Pointer Zero Adjustment for Indicating Pointer Linearity Adjustment for Cam Fol lower 7 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. Span Adjustment for Cam Follower Measuring Element Cam Fo 11 owe r Mercury Switch Permanent Magnet Vane-Arm Assembly Balance Cam Bearing Screw Lock i ng Sc rew Trip-Plate Shaft Convenient outlet} Attachment RlijA Timer Plug Optional c' 50% SCALE 2.5 SECONDS 0% SCALE SET TO 0% I SECOND SET TO 0% 5 SECONDS 0/0 PULSE OFF CAM I SCALE 0/0 OFF CAM FIGURE g SCALE OFF CAM o C"FIlfWU"§f' A "" 1000 P.S.I. CHART PRESSURE= 500 P.S.I. CAM BASE=5000 I I A .. B I I Y. TELEMETERED CAM TIME=5000 X =TELEMETERED ELAPSED TIME=2500 A =CI RCUIT CLOSED (TIME ON I) B = CI RCUIT OPEN (TIME OFF) C = CIRCUIT CLOSED (TIME ON 2) "'-'---.-YI -------.... r t A X, ~ -zlB c YI=TELEMETERED CAM TIME =5500 XI =TELEMETERED ELAPSED TIME = 2750 Z = ERROR IN ELAPSED TIME = 250 Fx = CORRECTED ELAPSED TIME Fx _ XI Fx _ 2750 5000- YI· 5000- 5500 Fx= 2500 FIGURE 9 one of the hardware timers. as Time On. Off. This time is kept in an array for the input The next sequence would be the loss of this signal, or Time' Again the computer is interrupted at point (B) and a program records the time of the interrupt. By subtracting the Time On from Time Off an elapsed time is obtained and placed in an array as elapsed time. The final sequence for this particular input would be the second Time On or point (C). Again the program records the Time On as before, but now a new value is available, the total time required to send this signal. In te1emetering systems, such as the one used by Public Service, this value can be used as a correction factor. al every 5 seconds or 5000 ms. A transmitter sends one sign- In cold weather, the cam speed can slow down causing the total time required to send a value to increase. This would also cause the elapsed time to be longer, thus creating an error in the value sent. The total time required for the cam in the trans- mitter to make a complete revolution is 5000 ms. If the total time that was actually sent is recorded, ,a simple ratio can adjust the elapsed time to negate any error caused by the cam either too fast. ~~ing too slow or See Figure 9, P2rt B. The advantage of using this type of input system is that the computer is freed from scanning. Instead of scanning the inputs to deter- mine a status change, the input interrupts the computer only when the change has occurred. In the Public Service Company application 160 values were input to the computer at an estimated overhead of only 10% of the computer's time. This can be compared to 100% of the computer time using digital input hardware. All of the, input variables are output on logs to technicians so that they can calibrate the transmitter to the computer. Ten P. I. S. W. words were wired to level zero of the computer, these are used for all Time On interrupts. Ten P. I. S. W. words were wired to level one of the computer; these are used for all Time Off interrupts. One signal line from a transmitter is fed into a type "c" relay creating an On and Off interrupt to the computer from the transmitter. 2.2 DATA CHECKING Every 10, 15 or 30 seconds, ~ependent upon the desired operation set by the operator, a program will interrogate the data placed in the computer by the input program. This program will check each input point ~C fo~ any of nine error conditions. If an error is found in the data, a report will be made to the operator. Error Conditions: 1. Off Scale - Below 0% or over 100% of scale. 2. Back on Scale - Was Off Scale - now reading is valid. 3. Rate of change is over limits - The present value compared to the last value is increasing or decreasing too rapidly. 4. Out of Limits - Value is out of limit bounds that are pre-set. S. Back in Limits Value is now in pre-set bounds. 6. Cam Speed Out of Limits Cam in transmitter is either too slow or too fast on each 360 degree revolution. 7. Cam Speed back in Limits - Cam in transmitter is now operating satisfactorily. 8. Circuit Out of Service - Input line is out. 9. Circuit Back in Service - Input line is restored. An array of last good readings is maintained ,by this program and if an input is found off scale, its last good reading will not be o changed. This gives the computer an estimating capability in the event that an input circuit is out of service. 2.3 DATA PROCESSING Two types of inputs are processed by the 1800 computer, pressure and meter stations. for Control. Pressures are values on the system that are used A file is maintained for each pressure input and includes the following: 1. Instant High - highest value telemetered. 2. Instant Low - lowest value telemetered. 3. Hour Average - last hour's average reading. 4. Day Average S. Scale Range - Range of input. 6. Off Scale - Number of times reading was off scale for the 24 hour average reading. day. Meter Station values include static pressure, differential o pressure and flowing gas temperature. See Figure S. A file is maintained for each meter station and includes the following: 393 1. Instant high flow - highest flow calculated. 2. Instant low flow - lowest flow calculated. 3. Hour flow - Hour flow calculated for station. 4. Day flow - Flow calculated for the day. 5. Year High - Largest hour flow for the year (Peak Hour) 6. Projected Hour - If the flow rate for this station remains constant, projected rate will be the hour load. 7. Projected Day - If the flow rate for this station remains constant, projected rate will be the day load. Constants needed for information and calculation, such as orifice meter plate size, are also included in each statistical file. 204 OPERATOR INQUIRY AND ENTRY Data such as gravity and plate size, needed for flow calculation, is input to the computer through the 1816 Keyboard typewriter. A program called "Key Board Monitor" enables the operator to queue up a function program from the keyboard by typing in the name for that program. Once the program has started execution, instructions such as the type and format of the data are typed out to the operator. The operator follows the instructions and enters the data the computer is expecting$ This minimizes data errors and leaves typewritten copy on what data was entered, by whom and when. A sample of the input of a plate change for a meter station is shown in Figure 10. The operator can callout any variable in the same manne·r, by typing in the program name for the function desired. This type of output has greatly simplified the training of the operators. 2.5 GAS LOAD FORECASTING Each year statistics on the last 26 years of weather and gas loads are applied against a model. developed y = a - bx, where y = From this data, a linear equation is forcasted load; a =y intercept; b = slope or forecast load per degree (F) change in mean temperature, and x is the expected mean (F) temperature for the day" An equation is developed for each hour for the remaining hours of the day for all four companies along with industrial equations for the industrial loads. These equations are solved in the 1800 computer each hour and a report is typed out to the opera tor shmling the forecas ted load tha t is equal to the fore- cast for the remaining hours of the day plus the amount already purchased 391/ - -----.-.-----.. -.~~- FIGURE 10 07:39:20 PLATE CHANGE PLEASE TYPE YOUR 3 INITIALS, THEN DEPRESS -EOF-KEY EEM INPUT IS BY EARL E. MC LAUGHLIN METHODS DEPT PLEAS E I N PUT THE MNEMONIC FOR THE STATION YOU WISH TO CHANGE CHCK CHERRY CREEK RUN = 1 HAS A 3.00 DOYOU WISH TO CHANGE THE PLATE SIZE IN THIS RUN c INCH PLATE NOW SWITCH TO ALPHA AND TYPE YES OR NO YES PLEASE INPUT THE NEW PLATE SIZE IN 4 DIGITS IN THIS FORMAT XX.XX 04.25 NEW PLATE SIZE ENTERED 4.25 IF CORRECT TYPE YES,IF NOT TYPE NO SWITCH TO ALPHA AND TYPE YES OR NO YES RUN = 2 HAS A 3.77 DOYOU WISH TO CHANGE THE PLATE SIZE IN THIS RUN S\t'J ITCH INCH PLATE NOW TO ALPHA AND TYPE YES OR NO NO RUN = 3 HAS A 3.77 DOYOU WISH TO CHANGE THE PLATE SIZE IN THIS RUN SWITCH TO ALPHA AND TYPE YES OR NO NO 7:42: 4 KEYBOARD INPUT COMPLETED INCH P LATE NOt'! OPERATORS TYPING IS UNDERLINED - ALL OTHER IS COMPUTER OUTPUT ~-------" ... ,-.-.. ,-.----~- -,-".----,,,,._---------_._-----_._-----------_.... - - for all four companies. The output will also list the storage requirements and industrial curtailment needed to maintain gas purchase contracts. At the end of the day, a full report is made to the operator comparing the actual loads to the forecasted loads. 2.6 DATA LOGGING System logs are typed out each hour showing flow totals, pressure readings, load forecasts and load projections for all systems controlled by the center. The format of the logs shows all of the variables that the computer used in calculating the flow rates. The logs are held pending for one hour to allow the operator time to correct the log if he disagrees with any of the computer data. ~f a correction is made, an amended log is typed out showing the computer's figure and the operator's correction. The only logs in use by the control center are the computer's output. System logs in a schematic format are also output to the operator. These logs show the pressures and flow rates on the system during peak conditions, and are a valuable tool for system analysis. At the end of each day, logs are output showing a summary of o the center's operations for that day. 2.7 CONTROL The intent of the control programs is to enable the 1800 computer to control the gas regulator stations delivery pressuies under normal operating conditions. No provisions were made in the programs to handle abnormal conditions such as electric outages, line breaks or equipment failures. The operators on duty should have control over the system pressures in the advent of any abnormalities, since their experience would be needed to make the correct decision as to what pressures need adjustmente Eight low pressure stations were put on computer control. station has a tail end pressure. Each This tail end pressure is located in the stations service area at the lowest pressure point. A minimum pres- sure limit is held at this tail end point (usually 3 Psig) by raising or lowering the station's output pressure. Each individual station has its own operating characteristics, due to the size of the area served and C \ " C. r··' the type of load in that area. The eight low pressure stations were chosen to provide statistics for next year's planning. An expansion of the computer system is under study that would enable the computer to control all of the low pressure and intermediate pressure systems. Both the delivery and tail end pressures are input to the computer to give the programs the information needed to take control of the station. Using this information and a target set pressure at the tail end, five decisions bands are set up to determine what action is needed. See Figure 11. 1. Target Pressure + .250 Psig = Band one. If the tail end pressure is above this band, the computer will issue a lower command that is one half of a second in length to the delivery station, providing the end pressure is below the delivery pressure. One-half second is equivalent to approximately .25 Psig at the s ta tiona 2. Target Pressure -.250 Psig = Band two. If the tail end pressure is above this band and below c band one, the computer will take no action. 3. Target Pressure -.30 Psig = Band three. If the tail end pressure is above this band and below band two, the computer will issue a raise command that 'is one half of a second in length or approximately .25 Psig at the station. 4. Target Pressure -.80 Psig= Band four. If the tail end pressure is above this band and below band three, the computer will issue a raise command that is one and a half seconds in length or approximately Q75 Psig at the station e 5. Target Pressure -.80 Psig = Band five~ If the tail end pressure is below band four, the computer will issue a raise command that is two and one half seconds in length. If the tail end pressure is in band five, this could indicate a program or' equip- o ment failure as the pressure should not be permitted to enter this area. In addition to the raise command, an error message will be printed on the 1816 typewriter. 39? I: I ! BAND TWO NO TARGET SET AT 3 PSI ACTION o AUDIO ALARM C FIGURE II \ 39f 3.0 PHYSICAL PLANNING 0" Eigh t month's prior to the expec ted de 1 i very of the 1800 computer system, engineering and programming efforts were initiated. Re- modeling of the present facilities along with designing and installing the input system were to be completed one month prior to shipment. The programming was done in four distinct phases with a test on each phase at the IBM Test Center at San Jose, California. At the Test Center, experienced IBM personnel assisted Public Service in testing of its system. On the fourth and last test, the complete system was tested as a unit. Upon the completion of the test , all of the operating programs were stored on the disk packs. When the Public Service 1800 computer system was delivered in August of 1967, these same disk packs ·were put on the system and Public Service was on Line e o o 399 -------------_.._..........._............._._........ 4.0 ---~. FUTURE PLANNING At the start of the 1800 computer project, Public Service initiated a two phase program. Phase one would be to input 160 variables from the field to the computer, log hourly calculations to the operators, provide operation logs for the next year's statistical work and test computer control of a regulator station. At the completion of this phase, the computer is doing much more for the control center than was first plannedo Eight stations are being controlled in the field instead of one test station. Engineering logs are being output gas system's operation during peak periods. showing the Operator entry has ex- panded to give the operator access to all of the computer's data, using a method that does not require the operator to be a computer expert. With the successful completion of Phase one, planning is now under way to initiate phase two. input c~pability Phase two would expand the computer's from 160 inputs up to 256 inputs. This expansion would allow all of the center's values to be in the computer. Output would expand to enable the computer to control all of the low pressure s~ations along with the intermediate pressure stations. require 100 output points. This would Both core and disk storage need to be in- o creased to allow room for additional programs. G· gmpnrlW" g II 5.0 COMPUTER OUTPUT The following four pages are output logs from the computer. Page one is the hourly system log showing all of the variables and contracts for the four companies controlled by the Center. Page two and three are engineering logs that were logged during the systems peak period o These logs show flow rates and instant pres- sures in a schematic format. Page four consists of system error reports to the operator, gas load forecast and gas load projection called out by the operator. o n[ - "lampe t m_ - .. I TU~SnAY NOVEMBER 7 1967 311 DENVER HOURLY LOADS, AND rONTRACT DEMAND SYSTEMS OPERATION MCF AT 14.65 PSIA WSGE P-1(139000.) CHF~FNNE P-1(46500.) PUEBLO G-1(53500.) CONTRACTS- DENVER G-1(375000.) WS~E P-1(139000.) CHEYENNE P-1(46900~i PUEBLO G-1(55100.) BEST DECISION- DENVER G-1(372300.) TOTAL HOUR LOADS FOOT MAPE MAPW LEYIN LEYOUT C + P "ENDIV NCOlD DFNTOT PWPTS DEN G1 WSEP1 CHYP1 PBLGI O. O. 872. 19576. 5275. 20447. 1743. O. 1469. O. (CORR) 18704. 6147. 1400. 2219. O. O. 872. 19576. 5275. 20447. 1743. 18704. 6147. 1400. 2219. COMP o. O. O. O. O. O. O. O. O. O. O. DIFF ACCUMULATED LOADS FROM MIDNI~HT 16. 79.11952. (CORR) 128438. 50531. 8617. 13931. 11633. O. 14662. 131467. 35869. 148781. 20343. COMP 128438. 50531. 8617. 13931. 7603. O. 14662. 135497. 35869. 148781. 20343. DIFF O. O. O. O. -4030. O. O. 4030. O. O. O. NORF PR .• AVERAGE PER HOUR TO PFAK. MESA HR NORF HR GRLY HR 696.5 15241. 5529. 2392. 2573. O. O. O. 4278. 282. 1587. DENVER HOURLY STATION DATA NU~RFR OF rALCULATIONS 13. (CORRF.CTED) ACCUM COMPUTER STAT. GAS AVG AVG AVr, AVG AVrDIFF HOUR H2 H3 H4 H5 41MCF H2MCF H3MCF ~4MrF w5MCF HOUR ACCUM ACCUM (GRAV) PRESS TEMP HI O. HAMP 0.656 147. 39.5 22.5 26.0 23.6 24.1 23.8 1972. 2118. 2022. 2043. 2027. 12207. 84565. 12207. 84565. 23.7 2023. ~AS 0.0 LOAD CONTROL 0.0 0.0 CHCK 0.666 150. 60.0 ~lTB 0.656 142. 43.0 25.5 21.9 21.2 19.8 ARSE SIXT 0.656 0.656 238. 145. 44.0 10.8 34.0 20.4 ARAP API L 0.656 0.656 102. 102. 51.0 32.2 50.0 0.0 0.0 0.0 17.2 CHER CPI L 0.656 0.656 140. 45. 47.0 0.4 42.0 56.8 0.0 0.0 ZUNI ZPI L 0.656 0.656 66. 21. 56.0 42.8 57.0 17.9 0.0 17.3 LEYI LEYO 0.683. 0.683 233. 233. 29.0 36.0 0.0 0.0 0.0 0.0 o. o. O. 1825. 1691. 1665. 1608. 54. 403. 123. 403. 403. 836. O. O. O. 38. O. O. 712. 27. O. O. O. o. O. 472. 400. 57.0 13.5 o. O. 46.0 0.0 DEN/NO COLO MEAN TEMPS. REMAINDER OF DAY) *MMCF AT 14.65 PSIA* + OR -EST EST LOG EST (SY.X) CURT FIRM IND ACCUM 12.0 0.0 DENVER nlVISION 163.2 45.4 131.4 DENVER G-1 128.4 8.0 0.0 NORTHERN COLO 41.3 17.5 35.8 WEST SLOPE P-1 50.5 -85.0 0.0 CHEYENNE 22.5 3.9 8.6 -45.0 0.0 PUEBLO 18.2 6.6 13.9 LIPAN AIR TEMP 35.0 CHEYENNE AIR TEMP 36.6 PUEBLO AIR TEMP ( )-MANUAL INPUT CARR PLAT 0.688 486. 0.688 158. (ESTIMATED LOAD FORECAST O. O. 41. O. O. O. 6791. 53836. 6791. 53836. O. 177. 1272. 1489. 8891. 177. 1272. 1489. 8891. O. O. 6353. 22. 6375. 7567. 718. 8285. 5461. 216. 5683. 7603. O. 872. 14655. O. 7. 836. O. 836. 38. 130. 168. 712. 27. 739. o. O. 872. O. o. 6353. o. 22. O. 6375. O. 7567. 718. O. 8285. O. 5467. O. 216. O. 5683.. O. 11633. -4030. O. O. NOVEMBER o. o. 14655. 7. CHFY 34. PUF.BLO 41. r.ARR+ TOTAL LOAD EST MINUS CARR+ PLAT ACCUM TOTAL BEST DECISION PLAT 352.1 -20.1 349.0 21.4 14.6 102.8 -21.4 117.5 -96.7 -49.8 -6.2 -61. 3 24.9 FT. COLLINS AIR TEMP 30.2 TUESDAY '~ O. 836. O. 836. 38. 130. 168. 712. 27. 739. O. O. O. 130. o. o. CIG EST LOAD 398.8 7 1967 3.11 8:00 ~. () o CIG ACCUM LOAD 189.8 MST ______ ( 2 _ . o o ~ -.: OPERATIONS ENGINEERING REPORT TOTAL DENVER LOAD AT 14.65 PSI~ RAsr G-l 19354. + PLANTS 1888. + LEYOUT u. - LEYIN O. CARR-PLATTE 802. TOTAL 22044.MCF PS-1 GRANTED O. IS-2 GRANTED O. LIPAN AIR TEMP = 36.6 DEG.F. COINCIDENCE =14.0% TOTAL DENVER CURTAI LABLE LOAD (41.0) DFG. r.1FAN TEMP. O.MCF TOTAL DENVER CURTAILMENT LOAD (41.0) DEG. MEAN TEMP. 10182.MCF F-S = O. F.-S = O. D-S . O. 24G-S O. r-s = O. TOTAL = 10182.MCF * LEYDEN MINE P 88TH rARR F-161 88TH PLATTE -P-----------------R-R---------------+-+---------------+--+-----------PR-------------------------PR*O.MCF 107.* I INJ. O.MCF IR 802.MCF I 158.1 I WITHD. O.MCF I 515.1 I +--+ I I F-340A I P F-358 I 87.1 I I I I 1 85.* 1 F-340B +---p F-l71 I I 1 89.1 +-+ 80.* I CHEROKEE I I F-402 P R*P 131.MCF I I 1578.MCF RP---+ I 142.1 F-80 I 1 39.MCF W-E I I F-392 ARSENAL 1 I 122.# W 126.*F +---------+---------------R*P---------------R*P I 1 74.INORTH NORTH TB RR 179.MCF I +-------------------P F-210 143.1 I CITY 242.1 I R 58.ISOUTH I 6479.MCF I 97.' I 1 P +--+----------+ I I I I I I I I I I I 1 52.1 +-------+-+ 721.~CF +---------+ I I L. P. STATIONS DEL. 4.8 46.4 0.0 23 6.3 76 0.0 F-4 6.7 F-7 F-191 0.0 F-230 7.8 F-269 0.0 END 3.0 23.2 0.0 3.1 0.0 4.5 0.0 2.8 0.0 R*P F-308 6TH AVE l083.MCF *P-----+ I I 68.* I I I I STA 11 P 145.1 +-------+-+ 68.1 I F-362, *RP-------+ O.MCF 1 83.IW 1 2 7 I F-3 P---I 96.11 I ZUNI 1 1 1 STA. I I +-----+--+ +---------P F-2 +---+ ARAPAHOE *P 1036.MCF +------------+ +-P YALEJCT. P----------------+-----------------------------------~----------RRP F-248 JEWELL-WADSWORTH 1 100.'EXP. I 87.1 I 134.IYALE I F-12 R +----------------------------PR-----------------------------------P* HAMPDEN I 112.1 I 11613.MCF I ************ I 148.1 I 1 103.1 * I I +---+ 1 P F-407 89.1 * * * * * * I *=MTR STA* R=REG. * P=PRESS. * #=PSIG. * 1 I I +-----+ * I ************ CHERRY CREEK R*P 6.MCF 0.1 . '& ~ TU~SOAY TIME .. NOVEMBER 8:12: 6 7 1967 311 ()PEr~AT I JoiS Ei'lG IIJEE;{ IljG R~P0RT AT 14.65 P31~. lO~OS AESTERN SLOPE GAS EASTFn~ CHEYENNE 1I GUT FUE l Pu.iEi{ CO. 0IVI~ION FRONTt Ei{ +--------R*P I 76.1J\CF I 40. t ***lEGE~m*** iWhFOlK R*P 253.:H~F 640.# I I I I * *=;lTR :>Tfl* P= PRESS * H=REG. * H=P,:jIG. * * * * * * * * +----+ CHEY I.P. ,I +---P NO. 30~.# PIP. iJ2.11 Fl*P TEilRY 451. tI 245.i·tr,F I I I A I R Tl-1 P • 2 ~ • 5 15~7.~CF I I I I R*P I I I +-------+ +-------+ I I I NO COL RATE CURTAllABlE S-f,!C O. ~·'CF o .t·1CF I-NC O.Mr,F E-NC O. i'" CF TOTAL & ~ 321.# PS-1 GRANTED O. '~-2 O. GRA~TEO I 5073. LEYliJ '- " CURTAllEu u .i·1CF (j .1·4CF EST. MEAN TEMP 31.2 AIR TEMP 35.7 I I o. 117.1 G-1 ~ATE F-S SO COLO POJER R*P 2244.MCF CURTAllABLE O.MCF SCP580.MCF CURTAILED O.MCF E-S O.MCF O.'-1CF D-S O.MCF o.I\",CF O.MCF C-S 33.1 +---------+ O.MCF I TOTAL EST HEAN TEMP R*P AIR TEMP so TO~IN BORDER 580.MCF I o .i4CF U.MCF 41.0 24.1 139.1 1401.MCF CURT,'\llEO o .MCF o .MCF O. ~1CF o • r.-1r,F ) MANUAL HOURLY ENTRY TUESDAY NOVEMBER TIME 7:32:37 r-~ O.ACF uEVI NE PR------------R*P------------------------RP 843.r·ICF I BOONE I I +------+ I 590.'(16 INCH)+------+ t I I I CARR P 471.# PLATTE I +--+ *R R*P +--+ I R. 1062.t4CF O.r.it::F I +--P 321. i LEYJEN *---+ 158.* +----P 428S.MCF O.MCF IN P*R MESA o .!-iCF OUT EST l1E/\'N TEr',1P 41. 0 1062. 15-2 GRANTED PUEBLO GAS AND FUEL CO. I I C-P O.i'1CF 9IlO.liCF 420.* +---+ +--------+ I I I + - - - + 8 3 G• # ( 10 I rH~ q ) I +---+ I 6135. PS-1 GRANTED R*P STATElI tJE 407.# o .:,1CF ·O.lqr.F PS-l GRANTEJ I 1:>-2 GRAnTED P--------+-+-+ BOULDER +-+ I 345.* +----+ P-1 7ti.MCF E-S G~EELEY I I FRONTfER RATE CURTAllABlE +---P SO. 254.11 I 1205 .,liCF I FT COLLI ~!S !~86.i P-l I I P lAPOi1TE I +--------P--------+ ************ I I I 119.* () 7 1967 311 (,) o TIME IS TIME IS TIME IS 7:43: 2 7: 43: 7 7:43:16 o ~ ALAMOSA HIGH PRESSURE CHEYENNE INTERMEDIATE PRESSURE F -210 INTERMEDIATE PRESSURE NORTH OUT OF LIMITS 160.8 OUT OF LIMITS 124.1 NOW BACK IN LIMITS 69.7 (ESTIMATED MEAN TEMPS. REMAINDER OF DAY) DEN/NO COLO 41. CHEY 34. PUE~LO 41. CARR+ LOAD FORECAST *MMCF AT 14.65 PSIA* TOTAL LOAD EST EST EST LOG -EST + OR MINUS CARR+ PLAT FIRM INO ACCUM CURT (SY.X) TOTAL BEST DECISION PLAT ACCUM 176.3 48.2 111.8 0.0 10.0 346.4 DENVER DIVISION 109.7 344.2 -25.8 DENVER G-l 44.0 13.7 NORTHERN COLO 18.6 30.5 0.0 10.0 103.2 21.9 WEST SLOPE P-l 44.3 117.0 -21.9 24.2 4.1 7.2 0.0 -12.0 23.6 -23.2 CHEYENNE 19.7 7.0 11.7 0.0 -4.0 34.4 -20.6 PUEBLO LI PAN AIR TEMP 28.9 CHEYENNE AIR TEMP 31.2 PUERLO AIR TEMP 13.3 FT. COLLINS AIR TEMP 23.6 LOAD PROJECTION AT 7:44:42 MST DENVER G-1 CARR PLATTE WSGE LEYDEN IN LEYDEN OUT CHEYENNE FRONTIER PUEBLO SCP HOUR PROJECTION 2250. 580. 1316. 75. o. O. o. 6141. 1118. 18997. DAY PROJECTION 49802. 13942. 1783. 28149. 7603. o. 7. 147725. 34421. 425291. TIME IS T I ME IS TIME IS 7:46: 3 7:46: 4 7:46: 9 7:46:21 ALAMOSA HIGH PRESSURE ANTONITA HIGH PRESSURE CHEYENNE I NTERMED I AT( PRESSURE CHEYENNE STATIC PRESSURE OUT OF LIMITS 158.4 OUT OF LIMITS 169.5 NOW BACK IN LIMITS 108.6 OUT OF LIMITS 420.0 TIME TIME TIME T t ME TIME 7:46:32 7:46:34 7:46:41 7:46:41 7:46:44 NORFOLK GAS TEMPERATURE TERRY ROAD STATIC PRESSURE NORFOLK GAS TEMPERATURE TERRY ROAD STATIC PRESSURE CHEYENNE NUMBER ONE DIFFERENTIAL RATE OF CHG IS OVER LIMITS OFF SCALE nO"J ON SCALE N0\11 0 N SCA LE CIRCUIT OUT OF SERVICE T I ME IS § \ IS IS IS IS IS CIG CIG FST ACCU~ LOAD LOAD 507.7 161..4 ~. 1..-; THE CATALYTIC CONSTRUCTION COo 7¥ (0/ 1528 Walnut Sto Phi lao Pao 19102 A Program for Making a Non~Linear Regression Analysis with up to Three Independent.Variables By ToEo Bridge This program will be very useful for curve fittingo" It will develop coefficients for calculating a dependent variable (or function) when up to three independent variables (arguments) are specifiedo There are nine options available involving various combinations of polynomial D logarithmic D or reciprocal relationships between the variables It was designed for system 360 Model 30 = 32K with 2 disk drives o ' o This program will also be useful if you need to correlate a large mass of test or operating datao Four numbers and a title are read by the machine on the first card NI, N2, N3 g N4 g title~ Nl specifies the degree of the fit for the first and N3 for the third~ argument~ (4I2~18A4) N2 for the second, N Type of Fit o Is not perrnitteo I Calls for a constant or average value for the function not influenced by the argument o 2 Calls for a linear fito The machine will find a straight line that gives a minimum root mean square erroro 3 Calls for a parabolic fito The machine will find a quadratic equation to give a minimum RMS error o 0 4 The machine will fina a cubic equation to give a minimum RMS erroro Any positive whole number or combination of numbers may be entered for N2, or N3 p so long as their product does not exceed 100 Nl~ 0 You must enter a total number of data cards greater than the product of Nl x N2 x N30 The more the bettero N4 may be any digit 1 through 9 It specifies the option that is desired -or whether you want to try for a smooth fit on a graph with linear or logrithmic scale's, or' a semilogrithmic graphS) or even on a graph with a reciprocal scaleo 0 Let Y represent the function 9 and liet Xlv X2 D and X3 represent three arguments fitted to a degree specified by N1!.j) N29 and N3 respectivelyo ThenS) the following table wil19 for each option specified by N4D show the type of graph that 1s assumed by the programo C,"; ~ MW"W"U V ! ; reWf Regression Analysis Program c- N4 Polynomi~l I 2 3 4 YDXI"X2"X3 XI!)X2j)X3 X2!)X3 X3 2. Logrithmic Y Y"XI Yg XI"X2 Yj)Xlj)X2,X3 Xl Xl,X2 Xl"X2"X3 5 6 7 8 Y"X2j)X3 Y"X3 9 XI"X2"X3 Reciprocal y Y Enter any desired symbol in columns 76~80 of the title card. The correlation coefficients (the answers) will be punched out by the machine ready for insertion in a Fortran program decko Each coefficient will be indentified by the symbol entered in columns 76-80 of the title card. It is then a simple matter to write a Fortran program to quickly calculate the function from any given set of the arguments. A subroutine (TB$PLY) should be put in your relocatable library for doing this o C in the above call statement must be replaced by whatever symbol you put in columns 76-80 of the title card. Y is the answer or function, and Xl" X2" X3 are arguments corresponding to the fit parameters NI, N2" and N3 respectivelyo Data follows immediately behind the title cardo Each card (or row on the data sheet) will include four numbers in order =- Y"XI"X2"X30 (4FIO 3"IS) o The problem is terminated if a digit is read in columns 41~4S. If a zero (or blank) is entered for Xl" X2" or X3j) the program will enter the preceeding value for that argument. Therefore" if you want to enter a real zero" enter some very small number close to itD asp for example -- 00000001. Of course" if you are making a logrithmic fit" you must not enter a negative value for the variable 0 Explanation of the Program I think that my explanation of this program will be a lot simpler if I talk about a specific formula rather than about a generalized oneo Consider the following formula~ Y = Ca + Cb Xa + Cc Xa 2 + Cd Xb -+ Ce Xb "a + Cf Xb Xa2 In the above equation!) we are mak1ng ~ 3 point fit with respect to Xa and a 2 point fit with respect to Xb. That is; if we hold Xb constant" Y will plot as a parabola against Xa; and if we hold Xa constant!) Y will plot as a straight line against Xb. We will read from a family of curves a value of Y for each of many different values of Xa and Xb Our program is to find values for Call Cb" CC II Cd, Ce" and Cf that will best fit the data that we give o Let Yg be the given value of Y for any point corresponding to Xa and Xb Let E be the sum of the square of all of the errors for N given pointso o o Regression Analysis Program E = r 3. ~O (Y_Yg)2 : Differentiate with respect to Ca. Since we are looking for a minimum value of E, this derivative may be made equal to zero. l. dE/dCa . = 2., but dY/dCa I Ca + 1: Cb Xa.· •..[ (Y-Yg)dY/dCa = O. therefore '" 1 Cc Xa 2 + I Cd Xb + L Ce Xa Xb + r Cf Xa 2 Xb = I Yg Similarly if we differentiate with respect to Cb, we can write another equation: dEl dCb = 2tCY - Y~;) but dY /dCt = Xa I Ca Xa + 4 -' Z oi o 0: W (/) (/) w r !-:--+...:...;.-:..t-..;....,--;--l--}--+--l i ! i ! {. t j ~ I 1 t -+::-"'F--+--+--+---+---<---i--~--T-~--t·--r-l,-·-r---1 ;--t 1; , 1 I T--+-----'-i f iI t--i--t---i--'-+--+\------!--!~;t' I , ·~-+--+--+--4--i--j--+--~-~-+-~-+--+--+--~---1 i I ! j -}--i---i ~/O I -r!" - r OO,-T--T ---~~I~:$~T Al _ PRUGRAM BY TEB MULTIPLE REGRESSION C SAMPLE TITLE CARD ASSUMING X2 ,AND 2 FUR Xl. .I_HE N4 C. 1 C 2 C. 3 .04 TEST PROBLEM IS CALLED Nl, TERMS IN EQUATION FOR 4 y 1-23-61 'jj OOOA .. .0.0.0.7 OOOR 0009 OOIn. Xl , 3 FOR aOll Xl X2 X3 VS 0012 t..AND .. Ol .IS _0013 02 IS. CALLEU.J13 [S CALLED NLt 0014 IS A VARIABLE GIVI~G ONE OF N[~E OPTIONS. IF N4 IS WI HA\tE A STRAIGHT POlYNOI-1IAl OPTION W~ HAV~ A SEMI LOG UPfIUN. LOG OF Y UNlY WE HA VEL 0 G 0 r Y AND Xl ONL Y WE HAVE LINEAl{ WITH RESPECT TO X3 ONLY, LOG OF OIHER VARIABLES C 4 ... _£ ...... _ .~ ....2._. w..C . HA..V.E LUG ~ 6 WE HAVE LGG C 7 . WE HAVE LOG WE HAVE LeG C 8 C 9 wE HAVE THt: Xl OF Q01.~.. 0020 ONLY X I , .Ai\iD X2 OOl~ . OF ALL V1\1{ I ABl ES o~ 0015 0016 .0011 ONLY OF X l , X2 , ANU (3 ONLY RE:CIPRUCAL LF Y ,AND LINEAR WITd ALL OTHERS. .0021 002? 0023 002'+ c .Stu'1.PLE D.AIA CAHD. USE FIELDS Uf TEN ..cOLUMNS£AC1:L ...... _. C.. c c C ARGU~ENT IF AN .~____.... _..THEREFURE~ C .42 C C C C .. 002Q 003~ [S bLANK THE PRECEEOING VALUf WILL BE USED. DO !~OT USE A TRUE ZERO. ANY VERY S.MALL NU~.B.E& wILL .. DQ... USE A lAIL CAKD wITH A C 0027 0023 X3 4. X2 Xl 3.9 ~ ·~~.1 1 IN COLUMN 41. 0031 _.. 0032 0031 0035 0036. 0037 WE READ DATA AND BuILD jlE O.4500JE 03 03 03 03 03 03 03 0,3 03 03 03 03 03 O.45000F. 03 o • 45.00 DE 0 '3 O.10000E O.lOOOOE O.looaOE O.10000E O.lOOOOE O.lOOOOE O.lOOOOE O.lOOOOE O.10000E O.loaoo£: ELeD VS OS YG 01 01 01 01 01 01 01 01 01 01 O.lOOOOE Oi O.lOOOOE O.lOOOOE O.lonOCE Q.10000E 2- 01 01 01 ot 0.18000E O.18000E U.l8500E O.19000E 0.195001: y ~ DSGN Eft PC 01 01 01 01 01 O.lHGI}2t: 01 -·o.oeq 0.18417E 01 0.19032E 01 O.19488E 01 O.lHOOOE 01 O.1!994E ;]1 0,.20500£ 01 O.2~OOOE Ol. 0.24000E 0t O.270QOt: 01 O.18000E 01 O.23~()OE 01 0.25100£ 01 u,.2G~2C)F 01 O.219b7E 01. o• 2', 0 f) 4 E. 0 1 O.27004E 01. 0.124 -0.167 0.062 0.031 ·,0.144· (J .. 2'-}~OOE 0 .. O.34500t': vi O.l8002E at -0.011 \~. 149 -O.Ol.J -0~Ol5 oa 1 8 00 'I' E () 1 o • 2 2 q 6 2 t t) 1 -0.023 O.t64 J.25169E 01 -O~268 J.29454E 01 O.34511E 01 -0. O~i 1 0»1':51 CL USER EXPERIENCE WITH 1130 LP-MOSS An Abstract U. S. Reduction Co. has used the 1130 LP-MOSS application package since its first release. Various problem.s have been encountered during its use; however, useful answers have been obtained. Due to the size of the aluminum alloy blending problem being studied, a second 1130 had to be leas ed for full dedication to this problem. Early results indicate a reasonable payback may be obtained from this hardware and software combination. An Outline 1. Company background 2. Early uses of linear programming 3. Problems encountered in implementing 1130 LP-MOSS 4. Results to date and future planning 5. Specific application modifications desired o ··TT'y nil o APPLICATION OF SIMULATION IN CONTROL, DESIGN, AND OPTIMIZATION OF CHEMICAL PROCESSES M. J. Shah ABSTRACT The problem of superviso~'confTol ana optimization of a chemical process requires thut the control as well as the optimization programs be provided with a mathematical reJationsh ip between the dependent and independ~nt variables in the process. I~ this presentation we will discuss methods of arriving at this relationship based On i·he fundamental laws of physics and chemistry. We will make the proper approximations valid for control purposes to obtain the solution of the differential '0 equations, describing this relationship. Use of simulation l0.ngL:agesherps in reducing the pr()gramming time as well as the number of.trials required to attain successful solutions. An example of methanol plant will be discussed in SOme detail to illustrcte the mathematical and programming techniques to achieve .the desired relationships for control and cptimization. It will be shown how these differential equations with modification of the obiective function when used in the optimization program can . lead to optimum design of the plant. Paper to be presented at the Common User's Meeting, San Francisco, December 11-12, 1967. o 4/7 o INTRODUCTION ,In the early applications of digital computers for controlling chemical processes, the work performed by the cO,mputers was limited not only by the restricted capability of the computers, but also by the fact that control and optimization , techniques had not been achieved by personnel of the chemical plants. Much time , and effort was spent in data gathering, alarm scanning and limit checking of important plant variables. Since the interrelation between the plant variables was not too well known, or in many cases not defined mathematically., virtually all of 4 the control work was done by using so-called regression models' derived from plant data gathered by the control computer. These regression relationships were generally simple enough that computer control could be achieved without overtaxing the capability of theavailable digita.1 computers. More recent digital computers in the process-control field are much more powerful in their computing capabilities. They also provide some very useful readymade programs for performing the various control tasks in a plant over and above the normal logging, alarming, and scanning functions. These programs will be discussed in subsequent sections. It is important to realize that a control computer must operate in a continuous mode, iust like the chemical process it is c.0ntrolling. The computer thus must perform all the routine data logging, alarm scanning, and limit checking functions, plus fhe functions of supervisory control, direct digital control, optimization, engineering simulation and other desirable tasks. In th is paper we will discuss the various process control tasks of a control computer and, in particular, theuse of sjmulation -- off-line as well as on-line -in control, optimization and engineering design calculations'of a chemical plant with a process-control computer. The discussion will, needless to say, relate to the available software for the IBM 1800 Control System, although the technique is not limited to any particular control computer. o lIlt! C t.", i III n-n s· !tIn Figure 1 shovv's the variou~ functions which the presently available IBM control computer performs. The central executive program is the time-shared executive system (TSX).3 This program a~locates the processing time ~vailable for the various functions which a control computer is requ.ired to perform. The time allocation is done in an optimum fashion, in that the calculations which have the utmost importance have the highest priorities. There are twenty-four or more levels of priorities available on a computer, allowing any higher level priority calculation or computer function to interrupt a lower priority level function or calculation which ,is being carried out at a given time. The interrupted calculation's are not destroyed, but stored in the core or on an auxiliary memory storage such as a disk. Thus, after the higher priority calculations are c,ompleted, the lower priority calculations which were interrupted are resumed at the point where they were interrupted. When any priority interrupt calculation is completed, the computer seeks for lower and lower priority calculations, until the interrupt calculations are completed. At that time, it is available'for offline nonprocess calculations or it is in idle" mode. A core clock is provided to perform routine functions such as data logging and o report generation at specified time intervals. The limit <:heckup of plant variables (violat:on of upper or lower limits) is done by a comparator, and the normal computer calcula!ions are not interrupted unless a limit is violated, and specific computer processing action is required as a result of the variable limit violation. COMPUTER FUNCTIONS - Let us look at the various functions and steps in process control that are performed by the computer. Data logging and l'ilanagement Information As soon as a computer is instarred r it is used for data logging and management information such as production of a particular chemical in 24 hours, the amount of fuel used, etc. The logged data is also important in model verification which will b~ discussed in subsequent sections. The importance of obtaining reliable plant data for model verification cannot be overemphasized. The co:nputer is much more reliable for logging than a human operator. Furthermore, a programmed fi Iter (such o 2 r. '10, .#,,,;;,,"'' ' =*:.::::1£,; 11,,41, .... n' itLa',l,,;;;::mu,lJ ..iJZil\litJL4&ittGJ,wPUM4&:1&iLlUll&==GIl"'dZhldl,MWJL&aidiiiiiiJlWiWAii,............. as time averaging, exponential smoothing, etc.) can be used to sort out the instrumen t signa I from noise. Other rounne functions such as a larm messages and o emergency operator action sequence can be handled as a first step in computer control. Regulat~~ A second function which a computer performs is regulation. The easiest regulation is by means of an operator guide which is defined as a~sequence of control action messages to be taken by the plant operator when dish.:rbances or upsets in certain plant variables are detected by the computer. To cite an example, a cement plant had a sef of four kilns of identical design, all fed by a single raw material slurry feeder and burners using a single fuel. Each kiln was controlled by a single operator for every shift. From a total of twelve operators, two were able to control their kilns in the best manner. It is easy in a case like this to program within the computer the sequence of actions which the best operator 1-akes as a r~sult of the disturbances. This sequence of instructions is printed for ~ operafors to follow when simi lor disturbances occur. In this nlonner, the operation of a II kilns reaches the level of best operator performanC":'e. o Superv isory Con tro I . In a normal plant operation, the operator makes changes in set-point positions for one or more control loops when a disturbance occurs. For a chemical plant with a large number of control loops, there are unavoidable interactions between control loops. An experienced operator can handle two to three loop interactions and make simultaneous changes in set points of the loops to bring the plant to a desired ·Ie\,el of control. It is difficult, if not impossible, for the operator to handle more thon three loop interactions. On the ot~er hand, a digital computer can be programmed to adjust one or more of the set points simultaneously by solving a set of equations which relate the variables of the plant to the multiple set points (target variables). A typical equation may look like equation 1 • o 3 (1) where F1 , F2 ", F3" etc. are constants, T is the target variable to be "controlled, M is the manipulated variable, U is the uncontrolled (disturbance) variable and V1 , V 2, V3 are other measured variables which enter from interactions with other" loops. Thus, for interacting loops a set ofequations such as equation 1 is solved to control a set of target variables. In this manner the computer can not only handle multiple-loop interactions, . but also make the changes in a consistent manner. In addition, since each loop has different dynamic characteristics (slow or fast response, short ~r long dead time, first, second or higher order system) I each set-point adjustmen't can be carried out by the computer in such a mann er that di Heren t dynarni c characteristi cs of each individual loop are token into account. Although this technique is in no sense an optimum dynomic control scheme, it is, because of its practical value labeled a poor man's dynami c control scheme. c Figure 2 sho'NS how th is scheme works. Let t be the time at which the computer colculations require t~at C~ adjustment of set points from say 60% of scale to 80% of scale. The adjustment may be made in severed steps of time intervals. Let us say that the interval between two adjustments is and the full adjustment is to be carried out in five steps. ~t If the loop response is fast, the adjustment can be performed in five equal increments, or any combination of unequal increments which make the total shift of 20% scale. For a sluggish loop, one can provide incremental steps which includes overshoot as exemplified by the dotted line in Figure 2. If there is a dead time involved ,one may incorporate a delayed action adjustment for the set point-. In certain areas of the plant, it is possible that one or more control valves ore changed manua lIy, and no ana log feedback controll ers are provided. The computer can perform the adiustment of these valves via a steppin8 motor if adjustment equations for changing the valve positions ore programmed in the computer. Thus, the supervisory control can olso provide ,a direct computer control (DeC) of the plant valves. As opposed to direct digital contror (DDC), the DeC function o 4 only provides proportional control and at more prolonged intervals (1 minute or o more). DDC takes on Iy seconds. SUPERVISORY PROGRAM The various functions described above, routine data logging, alarm scanning, limit checking and operator action as a result of limit violation, programmed operC4tor guide control, supervisory control and direct computer control can be performed with an IBM program known as PROSPRO/1800 (Process Supervisory Program for 1800). The detai Is of this program are in reference 4. In brief, PROSPRO program is written in such a manner that virtually no programming knowledge is required on the part of plant personnel. Howeyer, the program requires that personnel know the behavior of the plant thorough Iy, and, more important for our discussion, that relationsh ips for interacting variables in th'e plant be written in mathematical form. A general type of relationsh ip is available within the program, and one only needs to fill in the value of constants in the o general adjustment equation. PROSPRO requires that each variable in the plant be uniquely identified by a number. Then, for each variable, six standard information sheets are fi lied out. Two of the six sheets, the variable information sheet and the adjustment information sheet, are shown in Figure 3. Most of the required information is given by entering a 0 or 1 in certain columns, giving values of limits, actions as a result of violating these limits, and so on. The adiustment equation relating the variables of the plant is linear; however, the values of the coeffi~ients F , F2 ••• may be calculated 1 by using a general type of non linear equati on such as Fj = A + B [C + (F k / (2) D) ] E o 5 ---------,---.---~-~-----,,---------------~ '. -------- .._------------"" ,r'· o w' '''In] 'Tf I[ "["Mwr "J" fW'ij# Hft. 7"( firtffi • " WittHf'tMtrlt beth Ott t" , "tt "tt t 'tt hy"" "rl b, 'c I',.*,' i 1M .,i,n')' t!!lwt'rtettieit+.W;;; 'nW'tN'i"'t'!? i lWWrYrit"hSrl'UHtUMhlt:!l ....W;tWw'iW¥tiMw'WN1wUI'%t' where A, B, C, D and E are values of constants to be supplied by plant engineers. Once the six sheets are completed for each variable, the information from the sheets is transferred to punched cards and read in PROSPRO as data. The sheets provide permanent documentation and ani alteration in information on one or more variables is carried out by ~ltering the corresponding ~heet and the data card,and reading in the new card in PROSPRO. Some of the features and capabilities of PROSPRO are outline-d in Table I. 1 DIRECT DIGITAL CONTROL In some chemical plants, it may be desirable to install a digital computer instead of analog controllers, especially when a new plant is being built. This is cO'llmonly referred to as direct digital control. It is importan~ to note that a digital computer can not only perform, the function of analog controllers such'asproportional, de~ivaHve, and integral control, but also the more sophisticated control functions such as nonlinear control, control of loops with fixed dead time and variable dead time, adaptive gain tuning, and so forth, at no additional cost. Ana log control devi~es which perfcrm these functions can become prohibitively expensive as the number of loops requiring sophisticated control increases. In addition, a digital computer performs the rO,utine logging, alarm scanning, and limit checking functions. Direct digital control on a chemical plant with an IBM 1800 is attained by the standard program, DDC/1800. Again, for details of the program and control techniques, refer to refernce 5. ~~~ I ~ o ff4liifuftiti:\; iJ '.% mu,~ 6 ' ';" ",4:#,; ..I, ,n "",4 ""; ...: g ;":;,t;r.m,W'",l';.u IOto.C -r .... Q.GE""I'" '8o ~ lOll! C .... lCVI. ....TC':) nv I MA.INT ..... , N (;10138, r,... R - 1 C 4) N V £ It S!of IdentHicat.ion UHd lor Me.u,e Output. _ Engineel'1ni Unit. uled [or Con.ole Diaplay. Proce .. Unit ot VariAble. (Ol:c..=;:). ll:e::::::;:), , G-rid Column/Row - Con.Ole Grid Po.ilion. 2- Adjuume-nt Equation: Next Unit) [QIQ] III ~. 1 ~ I I I III I III I , .' I -,. . Equation Output Re s t rictions.· 9 ajAction taken when Variable M Out oI Service. I '0 I 7 ,!Action taken when Variable M Of{ Computer (On Operator). I 0 .1 Maximum allowable adjustment to M per pas •• 2:2 06 41Action taken when Target o{ M already at MAX-MIN Limit. , jAdju&tment Re(erence List {or Partial Loop Test. (ZftI\I\I\ or Blank) 2 09 2. , If Entry 14 specifies a Reference List, Entries lS-:a specuy s"bUst. (-1. -1., -3. _.1) referenced (or all subsequent M f • in control1ttop. \ II Entry 14 is Dlank, Entries 15-i8 specuy ~ll of the subsequent M . Variables in control loop. Target o( M ael to Average in"tf'ad o{ Current for Partial Loop? (1a Ye.) [TI] I 7 8 , OJTIME l 4 in minutes (bXXXX) or as developed (-nnnn or 1.nnnn). 10 ,.T 14 '.AM o 75 - ;z. 5 m~ ~ .'.,3 20 . 5 0 l.IS I (1) (2) (3) \ (4) =Cumulative elasped time '1.T ,. AM = Crom pre.ent time expressedaeapercentoCTlME. Percent oI AM changt: made alter ~T time • (Note: Negative ,. AM ia permiaaible ,) Special Action lnitiated Upon Significant Change in Manif'ulated Variable (M) • .. 7 8 3 I 10 Initiating M Change l.l 1 "'1 H,~: ::::::::::: 3 5 3 b _ . _ _ 1.1 Acti,," "0, 2 2 Action may'be apedlied aa follow.: (.) P,oecial Action. :.unit Che~ ction.: ----~ .. L;ned Proce . . MAXIMUM Limit. III . .3.00:'12 (No ViOI.-ViOI.)} Sp~cial Action tuen 'Whenpallinl throu,h ~; (Viol.- No Viol.) the Aaaigned Proc'!" Maximum Limit. ~ 6 o· •• igned Proce •• MINIMUM Limit. @ I I: 0 2 (No Viol.-Viol.)} Special Action ta.l. the Alligned Proce .. Minimum Limit. IO pper Specid Action Reference Point.' I~ 7 (Below -Above).} Special Action taken 'When pa .. iD, throllih l:8 Above - Belowl the Upper Reference Point. we r. Special Action Re!e rence Point. ~ I (Above -aelO W )} Special Action tAke'n ...,hen pu.tnt. throulh 31 tj I (Below_Above) the Lo ... er Reference Point. )til . J .jAuigned Delta Limit for OpC'!utor NotUication. 3 (No Viol._Viol.) Sf-ecial Action ta.ken ""'hen DeltA Limit exceeded. 3.~ elta required for A Predictive Adju.tlnent Action. \ ]. L Aclion taken {or A Predictive (Delta) AdJultmect. Taq;et Value ADd Deviation Proee .. ing: ~ I Doe. Vari~ble have a Target? (1- Yet, iollowlcg 10 item. appUcAble) ~~.u; I 5 Mlllimwn Time bel4c .. n lueete .ive T.1Ti~et CaLc. And/or Dev. Adj. . 4.ll 3 ~J.eediicd ArlioD to evaluate New Tugel Valup. 413 _ .......___(.:}.Bil:ned Deviation Limit for Oper~tor NotUicatioll. '-\ ,i No Viol. _Viol.) !)?e cia I. Action take.n ",hen DeY. Limit exceeded. ,5 . • ~p \(i:.tiOD re'iuired for :-.lormd Adjustment Action. . ~~~-1 ?""~5.!.!.£..~en tor !\::.rrnal DeviJ.tion AdJuument. . '7 . . ~.l.a"lmum Set Point Adju~tment po:r Pl.,,· •.;8' S~t Point Output. (I- CODtroll~r, 1. = DOC, 3" Operator M~UA&e) ~·9 Computet Set ·Contrt.>lIo I DOC Addre ... ~..Ej ~et Point Movement Rate. (1: ~! ••• ute, 2= lIZ Max •• 3;'1/3 M~ ••• tc.) ~ FI.nAI Special Action. ..t: LEvEL .--.1 12; . m SI~E:O Targcot. Current(AYerage)JCalculated Adjustment ,J' 2' I ~ [j ~U1Tlber ~ A.T DE. ~I PUI:..... -rEP~~_Q.I~1'\.l\:_.-_~~~""~CE_ o~'=£')"_"!"_r;~~~Ty_~~-=--_ _ __ f"n,:0 BAoc, Q(QV(5T - CONv("R ~ION : rerOf:O!tW....llD R£QV£S,.· f"EEPAATE 0.3 P (T 2 CONV~R.510N S liliiij) ADJUSTMENT IN.·OHMATIOI'l SHEET :-l~O-========::::::::===; 0.11 . rg:pJ V .... lve (P~oovCT_cO~q:NT_~"""T'ION) c o . 'f ~ • ,. I o , .. o o , ) ,'~ I ;" • .. . ," ~ , ~i • , to • 100 I NATURA'L GAS ...o(oe:f:f-r~ STEA"~ .-c - 1 1 ( :j?n~ II!: I Y FUel J ~ ,. 't; i . CO' " to BOIlE~ FEE D WATER 1· W~STEHEAT BOILER. . , ~ .~. : :; .t -':.' ~ '!-'., ';'< '; •. : ~ Kp . . .t I' ", I ; :',:~. r t v~ ~ . ' ~';",~" • • , ;, 1, .. " L,. REGENERATIVE T [>-J CO:2:R~MOVAL ·'i·:, ..; ..... .; ., . ~ ':'~: ' ':~ " PUR G E . INTERSTAGE WATER COOLERS 0 :~ TURBINES:' :'. ~ I ~ 00';' .. ; ClI1~PRESSOR' R1::FO ~!v\ '1: R ' . ; ' " ! lJlJM.,i, "A y 2cil::~~~sSOR FILTER ...·P.URGE .' . '~'r' '::-;: ,~' I':': ? , . .:'.. :. o~ ..... ~. :, . . ,., .': 0. :,~ I.,'~"" ,:. :;"" ,"C ', H OH • 0 t ·/.'.'\T~nA·' G.....: '" ., . ~ ~ ,,~ o~l 'TO' ~ .,' ." '. t~TDC'VIN SEP'ARATOR T/'\i'l I( ... .. ~ --t 'BottER FEED 1l,ETHt\NOt ,WATER HTR CONVE~TER- x -# Simplified Diagram of a Methanol Converter TI{l) '1 • CATALYST BED No.1 TO(l) . T I (2) I ,~"-_ _ _'" \~ CA TAL YST BED No.2 . TO (2) TI(3) .:;. j-' ~ ~r...,---_~ g- CATALYST BED No.3 TO(3) __ II (4) V- ., ,~..---. ·. CATAt YST BED No.4· . TO (4} I ' ~:, . .... ( ~-i~: 4-\ l~;(Ct~ J I' ~.-: Figure ~ ~ '"'~ .i . .0 rS . , 1 o it FEED' . ~. P (0) ,~~~ -: -) ·v PRODUCT TO HEAT E)(C~ANGf:RS 0 -~x-: -·~·~~':"=':·--;"·7r·:;:'~,t o .;.... o .... ..... ", , o " ....t;":, .~. ~ ,. .. ~. ~ " .~ ~ I , .• :. "I: .~ ......... •• I .. , Tima 'Shared ... :.'.; ..~. '. I, I ..•.. . ·'f ' .... , I -I Data logging 1\ Ic r nl S t.: a n ~. i ri' i t Ch c c kin 9 I I ~., . I .... ;-: 11 C g cr:n en t 1n i 0 r n'l a t lon, Operat6i. G u ide: ,',. Is Dig 1._ : . Con t r 0 I I I u pc rYi"~O fY Con t r 0 I ., '.:' '" '. . ,t, I' ; y I • I T f""'t-.\-av-a-L.~-c--c-d-""" t f Process 0 p fi m i z a t jon '1 Con t r 0 I or c c '., ;t .! c; U C S t IV . '1 I1 IIDirc~ ita I ::.: ~ ",. 0.rr ,I..In c Off Line ~ n gin c c r in 9 C a IcuI a t ion 5 w ret! ~ - Simulation , J V ,'.' • ''0. :, ' • I \ w - Set Poi n t :.',.Adiustmenf" ~ t' , '1 ~. ',",:' ,t· .. ., . " . '{ . f, Fortran :-, , Dcsi n OptI mization , .,..,avcnccd Si n1 uta t ion Lan!Juc~cs ,.;.I PI fc,c t . .Computcr Co'n t ro f(DCC) Various functions;of:.p:ro~ess control compute.f. ~. ~' ~ I}, f I ! ..... ; I . ' Vcrir-icotion fig. 1 I I Ia . ..... V ' Y ::: . ' • , . 'I l.lOWe " ::',.: : J'll:I ... ;' "V" Y 'I I •• ' .. , .. ~ , o .... . ~:. . ,- . .. t I. • .e- I I r: e- I ~----1 O n. . ~=>';l *Q) .CI) 0 tn '.r: ~~' ~ .." I .' . ~.. • ~""'.:. '1' ~~ ::> ,..,... . .\.' . . .- I I .. ,... I ••# . '.:\ ~.~ ;: : ~ : :.- ;:,:.~ ":~~.'.:".;':' -0 0 . ._ _ -" r.. .. . _. '. ." ~. -. .... ... ...... ~ C:> CO JLlJ V') . ."'. .- . ..,., - ' .... # ..... UJ Z -"'" -« ()~ o '-0 ~e . Ou C\.. V) ." T ~ '~p 0 • '0 r of - ~ •••:" • • ; . ." • . ,r 8p _.... <:. . ~ ~.~ ..:::., '- ,X .~ .....~~. .:.~~~. :-:-:. - .:--~~:~\." .'.<.. ':' .~: <. ~ ~.",::,: '. /... : , ~~ ' . .. .. -," • 0.. ". o· , ;" " . CO!,1}-ION :'." .f User~ 5 Meeting ' San Fr~ncisco Meeting 'Decembe~ Laboratory 11, 12, 13 Automat~on .. by Ray Edwards J. f!, t1 The session on Laboratory Automation -will include a general description of programming and equipment aspects .of the applic~tion oft.he 1809 and 1130 to this newly emerging and fast grovling field. Follovling this discussion, an application will be discussed in detail. This will include a description of the type of research to be accomplished, the incentives of the on-lin-e computer, the programming system to run the instrument in a closed loop fashion, and other experiences to date \vith the system. o • '0. '}', '. ... - ',-.--: / ....... -,' f ;:. J.:' .~..'" ", ,. ..... ' !..... .. .. ' .. . ,.. ~ j' • , .)."/ , I· )' ,I 1" ...... I' 4' "',' I,' ....... r .. \, . , . . i": • ,I o DESIGN PHILOSOPHY - SYSTEM OVERVIEW -. APPLICATION MONITOR ~xecutes Procedures·in Specified Seq. PROCEDURES Handles a Specific Task (e. g. Sort) ... PROGRAMS and SUBROUTINES ( \ All Written .in Fortran o Lowest ~evel Routin.es do General Purpose Functi.ons ( o .. - ..•.. - ... ~-.---- ..........-..• --~----... .~~- DESIGN PHILOSOPHY - SYSTEM OVERVIEW - o CORE ORGANIZATION Standard Compiler Allocation Two Sections: COMMON and WORK REGIONS DISK ORGANIZATION Single Exte rnal File Each Record 0 ne Sector Long Files Use Simple'-String o \ ~J\ethod Via Regions .."'""'-"""'==.' .... =..._ , =~~': ,=~=,.=-"-',=-=-=="'."~~'"~~=""' . '.;:-==-c.·....;.;:...:.:...c..:...."-'.;;;;.;;:..;=_...;...;.:;..;.:..;.......,;;;.:c. . .~~~~ - -~- --- ----- .. ------- ._._--'.,. .., _. "... ,.. ,_._~ _,,·_··".··n.... _'~'.~.~................... " 1130 ' o MONITOR XEQ MOSS MOSS Initial ize Core Common MOSSM . r-----~~ Application Monitor t<---------l Proced re Called Called Procedure NO xecute New Procedure Return to Monitor UL........ .~ ..... ~ . . . .?"'UO.....-ot..~o!l •• .... I YES o o DESIGN PHILOSOPHY - PROGRAMiV1ING STANDARDS - COMMON •.• o K = FIXED POINT Q = REAL VARIABLES ••• I = INDEXES L = LENGTHS . J = REGIONS o \ PROCEDURE FLOW CALL DOWN LIST (THRU INPUT) MOSS INPur - OVER-WRITE CALL DOWN LIST CNVI CNV2 - OVER-WRITE CALL DOWN LIST CLEAN SORT SORT3 - . OVER-WRITE CALL DOWN LIST CLN2 SORT SORT3 OVER-WRITE. CALL DOWN LIST Etc •. o \ \ o CALL EXEC U (LINKl, LIN KL, LEVEL, GO TO c KREPT)~:: kkkkk~:~ LIN K1 - Po sit io n inC aII Lin k Ar roy of Fir st Prog ra m to be Moved [(3-4n) where LINKL - Positi~n n is co-ntrol Call Link] in Call Link Array of Last -Program to be Moved [-(1 +4M) where M is Last Linl< in Array] LEVEL - Recall Indicator [if Level = 0 must return to main] KREPT - Provides Re-entry control [Used in Computed GO TO] jjjjj - Statement Number of First Call Linl< in ARRAY kkkkk - Statement Number of Statement Following Control. Call Link c \ o I . I I - READ-WRITE DISK - DREAD (NREC, J) Read a Disk Record (NREC) into Region (J) where NREC c 2048 ~:; J + Record Number .DWRIT (NREC, J) Write a Disk Record (NREC) into Region (J) where NREC = 2048 J + Record Number f.; DREAD (KNDCT, J) Read the First D.ictionary Record \ o OTHER PROCESSING FILES KMTX - - MATRIX FILE o 1. Derived from SETUP 2. Scaled for Processing Accuracy 3. Contains: a) Explicit Equation Coefficients b) Implicit Row Coefficients - - KVLST - - VARIABLE STATUS LIST FROM SETUP o 1. Derived from SET UP 2. Co nta ins: 0) Name· b) Type c) Matrix File Element Seq. Number d) Scale Facto r e) UB and LB For Each Variable \ IfSS Oi , I ~ j j " OTHER COMPUTATION FILES KETA - - ETA FILE 1. Formed by INVERT 2~ Represents Inverse of Basis Variables 3. An ETA Matrix is added by Each Minor Iteration' 4. On Each Major Inversion KETA is- tedtJced bqck to Single Entry a) Minimize ETA File b) Increase Accuracy KBETA - - BETA FILE 1. 2. 3. 'Formed by INVERT on' Last Step Co nta ins: a) Post I nversion Activities of Basis b) Post Inversion Activities of Bounds Values are Scaled -' \ " OTHER O·UTPUT FILES· KSLTN - - SOLUTION FILE 1. Formed by LPSOLLITION 2. Contains: a) b) c) d) 3. Status List Matrix File Objective Entry. Basis Activity Red uced Cost Values are Scaled KIANL - - INTERMEDIATE ANALYSIS (LPANAL) o 1. Used In Conjunction with KMTX and KVLST for LPANAL 2. Contains: 0) b) c) 3. Increase - Decrease Cost Basis Activity Inc rease - Dec rease Values are Scaled KWRKl-9 - - ,ORK FILES o 1. Used for Transient Data 2. Some Used by System, Some N~t ."., .•. ,-,----~ , .... -~-.~,- - - - - - - - - _........_-_._-_.,-_•. .. ..,----_., , ,--, ' o TO RUN LPMOSS WITH FORTRAN COMPILER AND ROOM TO WORK IN { MONITOR /1 OUP ':: Define Void Assembler 0100 (: Oef i ne Fixed Area ~:; Storedota CD \ FX LPMSS 1778 '(&H'*MW*fr'W'Mt'tW'·'I@I.ijjiM"!.jriWt/rM·'M'M~!Wi#:rI#,*HWtf6tM."'a i'.' ". to' .. jO' . j I!! Y"'2'M,'rWffW'N'WewWt "tH6 int"!;: 'j'imWtt;r:xi:rw"UW'1ttt yj-ji' "j ..- $' d't ij :'1#· .. ·'% .. "it ·"#ttdB....- ft7······ tri S •. O)·ittt#triMffflttfflifb"iiwm··WlliW··· I'm.- j1'V ·..iT-li·Twz .. ·..!)· Vel! .'n... c . PROGRAMS STORED IN FIXED AREA ON LPMOSS DISK BZERO NEWBE CHECK OPTIM CLEAN PIVOT CLN2 PRIMA CNVI PRLCY 0 CNV2 - PR L44 ! CRASH REPO R IN P UT REVIS INVE R RNGIP INV22 RNG 2P INV44 SETBO INV55 SET UP INV66 SET2 LPSOL SET3 MERGE SO RT MERG2 SORT} / 0 MOSSM MOVE \ SO UL2 ST ATI - . 1f3W' [ Ttl m,. .. - "cR'" _T I - t , l Proc.e~J UI'-e (use FLol~J -'.~...". r~$A r)(.)~v~·~ -List. ~,.. r STAT]~ I -- -______ 1 -0 - , FLIP. 2 o klfGIJ ( 'R IE G-[o IJ I ----(k IZ·G.i.t\! > J ----- N t ------- RE?(;··.[DI) L EIJG·l";'; ) f< f'e () l( D IJ U M B E R T HIS ·1 (KTtiPY.>J) -pf)E. . ·I (k.THNX~3 ) N G- Yo 7- , ., \ ",. 'f" (""" ..... - "I '" . . . u-- "k";)E.- ...... r·." ,.~ \. . \ _ ( \-,.oJ .,..,- '~'I-', "". ..I I 1 ~A ;0., ,.. ,.., !. ......- {-, 1·, 1 ' J. ~ I... F-=->"" " ~! I'"'- U t·~ l.r~ ,..-.,? .. E.. I" '" 1" .- " '\ ""'-~. IJ r-> "'", ,.f , ;. ~'" ....• .. _.,' "..- • , F- 1 LE. I • .1.•) /\!~. "'-~..J ...... I'~':' E LE I·~, £IJ is. IN REC61<.1) . I VAf? rtlt.::t.. r 6" .J(R";;'.i)li L.....I.J p. r····· r-o (.) r"~ 1s_t FIX c:ItJr)C;{oF pi R£/\L VAl:U,fi-::'- (h QRGN)I (1< Fl1:2)) :J ) (kNDEL).J ) 6':.,10. P '{~)rl';"}!· I", (kFRPx)J) c., ..• D· !. • (l< FJ< Fl.).:r ) ('r< PXLlJ) :f) (kFLL/,J) .~) f l r c l).seJ 6 (kTHRC)J-) o NCI\E 1.1£I}1- S } t· \. LHJG-r/J of FIxeD L_ El'·J G°rn or: 'R eli 1", Vfll~r /i ;::L CS Pel/,IT I (W01ZDS) ( kJ D/:~ D:;,) J E L£ 1-:~~!.!._7~.~.J._. __ . -_~_lX_[;_L)_ _. £ /;..E/~1 E NT 1- - ReA L ..... -. .. .. . ., -.--,.---..,,..~-- ~----..,.-.-.---.............., -~~-.~ ._"...",....':4 _f. LE!'.:.!~',J T.~~,~"_=..EI: .~~ '!:~'::~.~_"'---.. '~______ s-~"<." .~. .,_..-~I .. ,_"'_ _ E .LE ~~ E~JT ~'r _ _" ....-..·_ . . , . . . . _ _ "'~_ .... -•. _ ..... _ 71.. .. ~.~ - f:\?iA L .. ·... 4 • • ~l'.....• ·...... ·u _ _ ...... .-.~"....·I".· ..:- ... ~........... •_ _ .~"'J. ""~.-"I_:~·I!·.\· "",•.•""....... ~~ ... 'r-\It<'C.···""";",,,"'.~~lO_·",: __ ...,':.;.·,,~..: ' ....: .. e~:...c·~_:.i. .• '..~-¥ol."'o;1J.~,.....• . ..... = ..".-.=== ' .. -.. ,-.-~.~ ..,... ,="-===._."'_.:;..... _."'._._ ...~" ...,.. _.. _.."_.. ~- ~C_ ; \ o I i ; FLIP 3 -; . i 'D1CTItJl·J/,f(Y *"PL p' A- DDKESS (N) P Ro13LEI-'\ N AI/:E (0\.) (USINq. SU13PJ)UTINES RC:61.0tJ): tfl\\ V DSAVE ./'-.," SAVE£ A f,i(OF:LChi r: N T·r."}i2 DDLrE .~-' J)£u:rc fJ Ii 1t1 L~ NAME PC.F at):} , iN ])l:c.r-'l oAJ Ai? y- 2,1'/' PC.F~ r'-/?(Ji'i, DIe 7·1.bJ..I/j/:" y. - DUPJ) ""('- ... ~_~".._ . . ,1'-.. C. ALL D PL. TE ~f..\L.L DSF\\lE" 'R E T-U r<. JJ END J . J-Lrp. if DA'rli' o ·MAJ.-N·Tl:-JJlfl.JCE ---~----.- ---.-----..-- •.. (1) NAI,\E) , PRDBLEM NAME (0<.) =..,_"'...............J.'-.'-"'.... ~ ____,-__.__~..............,_-"'-'___,.._ ... _. . "'."....~ __. .'". . . . ._.....--.__........._ . , _-=~....:........~..."'" . . _ . ._.~.~~~.......~ . . ~- ( "":"'I'.::I;o~!t.~~C'.....",.. ( FILE-{;.ONTR.DL-t.X£LDVAR..S ,JFI) ~_~"'L'!'" s,""'_.o:'... .... ~ .. ..,._. --""~"'--""l'~-""'''~--~I ___ W''''''''__ ''-'_V''_~'-'-'''''''''~_'''''''''''-' _ _ '_''~~-A_~__''~'''.''''''''':''~JIiII'M.I'''''le"~'''~~''_~.'~_''_''''''';'w_. ~ ILE , J"F L) - Err:LD C.ONlI<'O L - VAT!, .----.-.... .- ..----.-.~.- - - . -..........-~.~ ......- .- - · .... ·...-.......... ~ ........·I·····-=-........·~. ..:."..-QI,"(JO>~',......... l,...___ .."" .........., o FLIP ...S --,...,......---- ~~ kpCFf( -...........~.~-- ~<>*>o...._r . - - - - - - - - - - - - - - - - - -....- - . " - - -... .. .... _ ............_ j. (~F/(/<. ~".JFI) IfEC:OI-~ D Lo .c/; . . . 7-rOI.,J ...... _ . (KLSR.c.~:!.!"r21,--~.Sr__IfE~~P__~~~E~r.!> f,) ~ ~~ ......,.........- FJ.:/?s -,- "_0 _ _ _ .. :1. .l-_~~~~ • ~ ..;,.-., . . . __ "'"".._~~~ ~ .~ ____ ~ _ _. _______... ~X/~C.,JF2t*NU~B_:~ OF R'!~I?O"~,_.__ {/(EXFI~.JF1)J KTER.1JA L-..!5: L6 No. 0 * N.(Jv; Su~PctZl·.s )1,1 u L.t, J~ 1 ,) SINCE 1 -p"" (" k'" . i .... • 1130/PtS (ro· be • Ldt~ r-.) Le O.JJS. F:.s ttl '2r.J e. aria-h Ie PR ESENTLY OIJLY V .J~) i.. ( SVpfbrt ---- -, -----_.- .. I .. J kDAT}\ SST VA f<.S If./l)£X X).JD Ex (I) DATA ,-yPE (:r) (£) z 3 - SET INDE?< f(£Fl:"R.S VARs .I RcF£J'(S /IJ tl (.; ):-' to Ttvo $£, E'J 71":.1'£ S -----, ________ ......... to ~;:,;,""~~"""'''.:zr.~~"-::-~,.:-;':U_"",, •. ~!~ ~~•• IFF. . C.OLfJl/l e It. E 'J-r~/t~ Y .. N - . , EN TJ~Y. R6W DU pL.re/\ T'£; RrrCo~D' A.~D LAsr USC.r..). '~~~""1.~~--------_."...~~t_t' f"aa ~.... LI ." ~ j AT· l~/JPur VA«S A rl-JDEX No._, Rf~GAR.DL_CSS Or:: DU fL-lcA·rc R. Ow AFTE)~ .. LEA'VI/JG- ONE ._ _ (x) "'_I!,~~~_T 1 - (R):" ASSIG#.'}En EIJT/{.!£S. A 011.S L l-£'A /-1- U{J) DtJ P1..1 (! ATE:S . AR.,; EIJTt?'Y FoR. Eli£'.. H -.---,...-.------.-..... ~-'-""----. .Is ---~.--. . FO~':M"i --. . X-II S£C~u[JJC£~ D61-!£;' By Rf.t~1!JV E~D ~-ol'?Dl:J.jAr£. -0 ... ~.---.-----~-. -~.~•.-.....,- ......,-.-,""-.-'- -"~-.-'--"-'.,......-~--,-- fOr Rn'lL No, :. (tJA Z) =- A ForUIl fir J/~¥ ,MosS', _ _ _ _- 1 At-,oJf;i8ET' GET OF1= D ,r'C. TI:c. JJ F'f P.y RCC_c.R.D R..{; cD. . Ric..cRDS 1;(A':~ of' U3t) S~i) ._. . . *"* k VIlKS PRoBe 1 '.'_~~ _ _ /' .....-...~~-....,_.~,, __ ....... _Q_~ K PliTt.. K(){\SS ,), '" ; "'. C>f:;' ~ PROei. Pt.F _... _ , - - 1 ". )'i "'\/,,(:.(';" , ". k r ~ T hA ,,) . . ". A"i'-,Ot)~ , p' VI",t, ',\;! 2. 1 1. :..:.,..;)"..:r.~-'_, J I PI<.cat'·: r~' . C,i @fc.r: ® Nci-r.:r ..r Fil,·~ (',,~ i~ ;'" fl.' hld.:·/' ) ... . IFI = L'l~j' 1·~ ® -r(e.$10~ }'J ;)" ® F-'f.(?--' 1. . :)~·-· LFL Go -To 25' l ...; '1. D Pc F~ / 100 -0· N DRIJJ ~""'.'''' t I.J 1):1 c.. Ii ·rt:~~S! R£ i\ 1) r~ f... t~J)) I; I> :~_·r:'·~i (+ 1.) REA D eA::..kL.Jlq~.r) L.lJlleYi (.··--t) tl} ..------" .. " ESSO R!SEARCH LABORATORIES HUMBLE OIL &REFININ~ COMPANY. BATON. ROUGe RE:FiNERY BATON ROUGE, LOUISIANA O·IWXNOUM'ON -M:>dification of IBM 1800 TSX to Support Six Disk Drives December i 4, 1967 av E. H. Spencer "LK NO. 1407~1 INTRODUCTION This is a report on work at the Esso Research Laboratories of Baton Rouge which added three more disks to the TSX system. The additional drives are treated in an identical fashion as the existing three drives. The new system has been tested for some of the options of TSX and all known bugs have been corrected. It is easy to convert an existing TSX Version 3 system into a six drive system. All that is required is a TASK assembly, the STOREMD of·four subroutines, a partial system load" a define operation, and a skeleton rebuild. Although the method of disttibution has not, bee'n decided, these changes are to be made available to other 1800 users. DISCUSSION ,~ The Esso Research Laboratories are located only two blocks from the main office building of the Humble Oil Refinery at Baton Rouge. Work at the laboratories is mostly process development. A small computing center is maintained in the laboratory. Through the years this has changed from a C.P.C.,to a 650, to a 1620, and will be an 1800 when program conversion is completed. Large computing jobs are sent to the refioe;ry 360 system. A study of work done by the labs computer showedi t to be data acquisition and batch processing of small jobs. This finding led to our 1800 order. Logic of handling the acquired data indicated that some form of indexing and a random access to the files are desirable. Hence the choice of disks for mass storage. HOwever, data volume is such that three 2310 disks are insufficient. Our system was, ordered with five drives. A similar situation exists in the refinery where an 1800 computer is being used for direct digital control of a blending operation. Here the system was ordered with six disk drives. Under the press of two urgent applications, I began the job of modifying TSX to support the three additional disk drives. I was assisted by 'our I.B.M. representative, Mr. J. A. Albritton (S.E.). I.B.M. was very cooperative and through Mr. Rob Martin of the Houston -. DACS Center we were able to get copies of 1401 microfiche tapes of the TSX system. The work was started in May and completed in September. The modified system has been in use since October. There are no known bugs remaining in the six drive TSX. Although all of the options of TSX have not been tested such things as skeleton puild, core load bUild, compiling of Fortran and assembler langu~ge programs, storing and deleting of core loads and relocatable programs, and the execution of process and ,non-process programs have been done. •• Humble has consented to make these results available to·other 1800 TSX usersonce the me-thod of distribution has been selected. The Esso Labs would prefer not to act as agent for handling the distribution • ,.....~~~..... --- .. _--------,----- -2· We started from TSX 3 Mod 1 with corrections through PTF 27. Appendix B shows . the source level changes that we made to TSX. It should be noted that card numbers correspond to the microfiche tape for Mod O. This is bec,ause only M:>d 0 was available when we started. ,As MOd 1 and PTF's through 27 became available we added. them to our MOdO source decks. o Our work was aided greatly by the fact that in some areas of the TSt programs provisions were made for future expansion to six drives. In particular, the M:>nitor and Disk utility Programs (DUP) record and test the availability of drives by the use of three bits of a word. in DeOM. Since a word hasl6 bits, addi tiona! bits were available for three more drives. Even ~re important was the embedding of unused words in DeOM whenever information referring to a particular drive was stored. Without these provisions it would have been necess€k~ to modify and enlarge DeOM. DeOM is the heart ofTSX and is referenced absolutely and repeatedly throughout the routines. Furthermore several system programs end only a few words from the start of DeOM and enlargement would require IIDving them to lower core. Such IIDves would be difficult to organize in sections of EDP and DUP where an extensive overlay structure has been built. In fact, without the unused wOrds of DeOM, it would not have been practical to change TSX for six drives and because of this it is not feasible to consider support of more than six drives. It is difficult to convey the size of a job of this kind. It took over five months and involved twenty-seven TSX routines. Fourteen pages of source changes are listed in Appendix B. TSX logic in handling the· disks was suffiCiently general that only in a.few cases was the logic changed and often, even then, just for a gain in ~ efficiency. Mbst of the changes or additions were minor. But the problem of locating them was not necessarily small. It sometimes' invol ved tracing back through several routines and to do this required a great deal of detail knowledge of the TSX programs. Because no courses on TSX internals are offered by I. B.M., we were forced to learn the system by reading programs. Instructionscoutliriing the' procedure to be used in converting an existing three drive TSX system into a six drive system are given in Appendix A. It is briefly to (1) insert the change cards in source TASK and reassemble, (2) STOREMD the four, Fortran I/¢subroutines, (3) partial system load the changed routines redoing the aSSignments and the DEDIT, (4) define NDISK and CONFG, and (5) rebuild skeleton. The define and rebuild skeleton must be done with six drive TASK in core. The de~ine CONFG and skeleton build are required because a new cold start and an error decision . program, have been stored. Word count and sector address of skeleton are stored to· cold start by define and to EDP by skeleton builder. CONCLUSION Other potential users of our six drive modifications face two problems. They are the problems of distribution and maintenance of an IBM unsupported system • . Corrections to 'ISX have been numerous and many are in the twenty-seven routines .which we changed. If updated source programs are available , it is usually easy to make the .corrections and recompile. However, most 1800 users do not have source cards, which are available only on magnetic tape. EHS/gth APPENDIX A c PROCEDURE FOR UPDATING TO TO SUPPORT SIX DRIVES o .. "' · 4 q., ·47, 7. .., ',-,. ,\ ___ p _ .. _ _ _¥ ..+41\, ._ --~ . . . ."' "-'. . ~--..-.-,.----, ..... ... ~ .. . ,~ ~ :",:,.:o..~------ "."11 . . . . . --.. . . . .---"~,-,, -,~--- ESSO RESEARCH LABORATORIES HUMBLE OIL & REFINING.COMPANY • BATON ROUGE REFiNERY BATON ROUGE, LOUISIANA Six Drive Changes to IBM.1800 TSX-Phase 2, 1800-0s-001, Version 3, ~dification Levell, through PTF 27 . DATil December 4, BY 1967 C ( j FILE NQ. E. H. Spencer, J. A. Albritton (IBM) I. General Comments A. These decks represent user modifications to TSX to support six disk drives. Three drives ar.e standard and three are RPQ devices. B. Area Codes of 20, 24, 25 and lAC codes of 20, 24, 25 are requiredo C. The cards consist of source change cards for TASK and obj ect decks for subroutines and for system routines. Control cards are included. D. After the partial system load, user TASK is required. now incompatible with Sys G~n Tasko E. ASSignments must be made for the 3 additional disk drives. A DEDIT is required to clear FLET. A DEFINE CONFG and a skeleton rebuild are required. F. Thre~ The system is additional fields are used on the cold start card (24, 26, 28) for dive identific ation and on the JOB (21-25, 26- 30, 31- 35) for label identification. II. Procedure A. Complete the additional TASK EQU's" Insert the change cards replacing cards with equal numbers and including others in the source TASK cards. Reassemble TASK. B. Copy your system on another pack. C. Do the DUP operation required to STOREMD for the four subroutines. D. Do the partial system load. Redo the ASSIGNMENTS and DEDIT to initialize FLET. If the three additional disks have not been assigned, be sure to assign them. (From here on user I s TASK from Step A is required). E. Load user's TASK from cards o D() a DEFINE CONFGo (Ignore the error message which says TASK in core :is not the same as TASK on disk). F. Rebuild skeleton using the new SKA program and the Levell SKB program. Henc~forth use the copy. EHS,JAA/gth 4?{) .~~--~-.---- ._------------ MATERIAL LIST FOR SIX DRIVE CHANGES TO I.B.M. 1800 TSX-PHASE 2,1800-0S-001 VERSION 3, lvDDIFICATION LEVEL 1, THROUGH PI'F 27 USER MDDIFIED lO SUPPORT SIX DISK DRIVES (Esso Research Laboratories, Humble Oil Company, Baton Rouge, La. and I .B.M., Baton Rouge ,La. ) I. II~ WRITE UP OF PROCEDURE CARDS Item No. Description Quantity 1 Task (Source change cards to be inserted in source task) 339 2 Supervisor 80 83 Core Load Builder Cold Start 51 Disk Utilities (Total - 142 Cards) (1) Control 18 (2) LetjFlet Dump 17 (3) Store Control Card 43 25 (4) Delete (5) Dump-Disk to NPWS 19 (6) Write address 9 11 (7) Search Program Name Table Error Programs (Total - 85 Cards) (1) Control Program 38 (2) Disk Error Program 11 (3) Error Table 4 (4) C.E.Routine A 14 (5) C.E.Routine B 18 Skeleton Builder 60 Task Utilities {1) Task Card to Disk 10 (2) Task Disk to Card 12 (3) Task Disk to Patch 7 (4) Task Disk Duplication 6 (5) Task Disk Load for Off-Line System 13 (6) Task Write Address 33 Subroutines (Total - 31 Cards) (1) F-I/O Busy Test 5 (2) Disk F-IjO Busy Test 4 (3) Disk F-IjO 17 (4) Fortran Find Routine 5 3 4 5 6 7 8 9 0 1 '/ Deck Ident. (Col. 73-75) TSK NPS CLB CLD DCT LFD SCT DEL DPl DWR SRP EDP DSK EUD CEA CEB SKA TRL TDD TDP TUP TDL TWA BTl BT2 MDI MDN ~7/ o APPENDIX B SIX DRIVE SOURCE LANGUAGE CHANGES TO TSX () .1 APPENDIX B Page 1 0 f 14 TSX . IDDIFICATIONS. TO SUPFORT _______ .-..:.~._ _ _._____.: ________. SIX DISK DRIVES· SOJJRCE:_LANGUAGE ... _CHANGE-..GARDS:--_ _ _ _ _ _ _ _ _ _ _ __ ~~.._ _-OORG3.-EQU-__. '-.------0:-.. 1F--THREE-~D.1SK-DR..-~..ELSE-l--___TSK00081__· DORG4 EQU _ _---......0....--0 ORG5-.E.Q u.-- O·IF FOUR DI~K DR. ELSE 1 TSK00082 --__O._lE._F_IVE...:.......DlSK-_DR .•. _El.SE. __ .L______J-SKOO'083 * * * * PRIL3 EQU DISK DR 3 INTER. LEVEL 0/23 TSK00084 _ _ _ ...eRl.L4_.. EQU.__~ __.....:.__ D.lSK._DR._4_1NT.ER. •. -LEVEL.-.-*_0 L2.J---.iL..rSKO 0.0..85..-,-________ PRIL5 EQU DISK DR 5 INTER. LEVEL 0/23 TSK00086 DC___. __ 2 O_.:... __ .._________ AQQJ_T..tQNS __ TQ __ JA.C__T.ABLE_.____TSKO .to 7 t DC DC IN3 24 .----.---·-·--------6c-----IN4----··-·--··-----·-----.---.-----____ TSK01672 TSK01673 .T 51<:-016-74-- _-.:.DJ:;. ___ ...._. _. ~.5. ___ ..________.______.____._ ________t.S.KCU . 9.J...~ DC IN5 TSK01676 _.___.____.....I.~.D.D____O_C___ .__ ._TAD.D.s&:.6 ___ ... _.. .D1<___DHV._T.AS __ AD.D_Ll\BLE.__ L8.1._IS_I$.O.3.79Q_ _ _ _.____ ..._ TADDS&l ADD OF LOGICAL DRV TAB 188 TSK03800 LOGDR DC ~_..____._. _____ ..Pj:iYQR_.DC.__.____T..ADDS&.7...__'__._ .. ___~DO._.OF ... _P):tYSJ.<:AL __ DR_I.&6_.1_8_9___TSK0381.0 ._ _ __ DC TADDS&12 END OF PHYSICAL DR TAB 190 TSK03820 _ _ _ _ _ _ _ ORSUP_DC__.___._5_ .. __ CQD.E. __OE.__ LAS.LDI ..sK_DR.V._1...2.Lt..SKO.383CL______ DC -6 MINUS MAX NO OF DRIVES 192 TSK03840 'O.<:.. _____T ~ DD S_._ .... __ , . F WA__OE_.DEV.I...C.E __TA B~ 1.____ ._J_23_.I..SKO 3.850 ________ _ TADDS DC I *&5 OK DRV TAB ADD TABLE TSK03901 DC_--.:.___TA ..~_._.. ______ ._LOG.tC.AL_.__ DRJVE_O___ ..___·__._. __TSKO.39.Q2..________ ---------DC TAl*DORGl TSK03903 _D.C ________.IA2*D.ORG1*:DORG2..-___ ISKO_39_0.4-________ _ DC TA3*DORG1*DORG2*DORG3· TSK03905 ____..DC _____._____T..AA"*:DORGI ~DOR.G2_~DOBG3}~:DORG.4_ _ . T_SK03.9..0_6_____ .___.____. DC TA5*DORGl*DORG2*DORG3*DORG4*DORG5 TSK03907 ____D_C _ _ _ _TA ___ . ____ .. _E..t:tY.5_LCA L~.RL VE __O__ _ --.ISK 0.3.90.8_. ________.__ DC TAl*DORGI TSK03909 _. . . ,___.____._.. __.. _. ____ ... DC ___ ...... _..... _. T.A2*DORGl *IJORG2. _.' ..... __ ..... _____... _.. _.... _._._ ..._ .... _....... TSK0390A. DC. TA3*DORGI*DORG2*OORG3 TSK0390B ___ . D.c__ .___TlL4_~D.QR.GJ_~DOR.G?_~_09R.~.~.~D..9RG~___ TS.K.o.~2_0_C _ __ DC TA5*DORGI*OORG2*DORG3*DORG4*DORG5 TSK0390D _ _ _---'C DJ~Se..__ EQU______.DB .sVe.~..C ON____ .D. ISP.~ AC~1.1ENJ.. __ .E.RQr1. __COJ~L_ _ ._LS_I<.O.4 2_4_.1 ____.. __ ~___ .____ TA33 BSS E 0 TSK07390 FF~_._A_ .E.Q.u._. _____TA~.3~ J.A 2 _ .. ________ ._____~ __.____________t.s.K Q.7J!_QQ_____.._______ ORG FFA*DORG2*DORGl&TA2 TSK07410 _..___.._____~_L~S.EJ~.I___.IHE_ ..E.QL-L.O'WJ N.C;.__ 222..__C_~8D.S.._ ~F TE;B_T.SKO..I~LLQ____-_ .... ERLOOOOl ___________-LIABLE.._EOR.._DR_IVE__ ..3____________ _~ _______ .__ ._EBLO.O,QO.2_________. * ERL00003 _ _ _ _ _ _T_A:1. __ D.C 0___.__ .L ~..s.J__ I .O.C_C._.....%AREAo_______O.__ ERLO_O 0.0.4-____· ___ _ DC /AOOO %CONTROLC 1 ERL00005 D.C_ _.._O____.___.______NE;.>-CJ__.l.Q~_C__ .._% ~..REAo __.. ______._LEBL.O_QQQp DC /AOOO ~CONTROLC 3 ERL00007 --..- -____ .;.....__.__...DC_. __._..._. ___.. O_. ___.__ ._.___.- ._..... _L AS T.._WD.C T. _________________4.__ .ERLOO 008 . -____ .---.-._--." DC 0 LAST DK ADD 5 ERL00009 _ _ _._ _ _ _ _ DC_.____ O_._. _____ NEXT_'tIJD __.C..T_ ...____....___---6-.ERLO.OQ.l.O DC.O NEXT OK ADD 7 ERL00011 DC__ .._.__ .___ 0 ___ .____·__..... ___._SEEK. __I.O CC_._% ARE.A C. __.______ 8_ERLOO'O l~_ .. _._.___ _ DC /A400 %CONTROLC 9 ERL00013 .-.D.C_:.....__ ._~_O_... _...___.__ ._______SENS.L.I-O_C.C__ _".. _&.-_SEEK.._TO__. __1.Q._._ERLOO_Q_IA__.___ . ________ ._ DC /A700 %CONTROLO II ERLOOOl5 ,______ ..~J)c._ J..A3. &:3.6.__ ._ _CtiE C:iS_-L~B.L E ___.LQ.C C__/~A REAOJ LERLO Q QJp________-. DC /A600 %CONTROLC 13 ERL00017 DC___.___ - 0. ___._.____._. _______T.P.T..AL. __WQ.,.C_T .LEF..I._____..._L4 __.ERL.O 00.1 S_ ..._____ ._.____ . DC 0 . FIRST READ/WRITE' 15ERL00019 -C'I'-- * o . .. -.--lIt::-t4--=o::-::::7--= ...1::----- ---------- -------j.fFPENDlx-B--··-- --.-.-----.--- --.. -.--..----.. .. .. TSX MODIFICATIONS TO SUProRT SIX DISK DRIVES • So.URCE ___LANGUAGK_.CHANGK._CARDS._ SAVE l' -~---.-.--.----~ -------.-~ DC 0 DC 0 Page 2 of _.- 14 .. -----~---- ----.-------------.--------~- 16 ERL00020 .. _~_~__ O..c._____ . _____ ._______Q..____________ .__________________.. ___.____ ._.____.________ .__ ._____...:_.l7__I;HbQ..Q9_gJ__~ _____._ '-' ERL00022 _________-----...D~ _____O_____ ._____._____.___ . .____.____.__.. _..._..______.._________1._~___ ERLOO'02__3 DC -2 VARIABLE &-2 20 ERL00024 ._ _ _. _.___D.C __________T A3.&1..6____._._SAVE__ ADD.... _____ __.2.1 __ ERLO Q 025 _ .__________ .._ DC TA3&17 SAVE ADD&l 22 ERL00026 . SAVE 2 : 0 \ 18 __________ OC ___ .__O_______ ..________ .__ ._._._NEXT __ ABE A. __ A00__& __ l _____2.,3_.E~LO 0.0 27_________· _. ____ _ DC ~_.,- -8 ARM POSITION 24 ERL00028 __ . ___________ .Q_C ______________ O.._______.____._--__ERROR ___ CI _____. _____________2.5____EHLO.OO 29 DC 0 CALL tNT LEVEL 26 ERL00030 ______________ .D_C__ ._____.____7..5.Q _____.___ .___ NQNf.?80CE_~s.. __ W_QRJ< ___STO'RAGE __ 22___ ~.RLQQ'O_3.L__________________ . * INDICATOR TABLE NEG-ON EVEN-OFF ERL00032 _._ _.___________ .D_C_______._.___ ._O__ .__.____.______ ...______ I .. l.. ______ ..___________ 1.2_________.__ Za_ERL_O_O_Q_3_~ _______________ _ DC 0 SEEK WRITE IMM 29 ERL00034 _________________D~. ________________Q_______.____.________ C.tL ..TA~..__________ ._~tL_TAS.__8.J;I.____ ~_Q __~BL_QO.Q.~~_____________ _ DC 0 SEEK FUN READ 31 ERL00036 ______.______ -DC__ . ______ O_______.______W/..RS_C __________._ ...._.w_t..8B_C~_.IN~_.9J?. _~.?__ .~BL_O_QQ.;r!.. _ _ _ _~. __.. DC 0 GENERAL INDICATOR 33 ERL00038 _____________ D_C ___ ~--. _.___ .__0._. _____._. ___________ FJ_ LE__ PRO_!. ___ E.I Lf;: __ P_RQ ___SvL ___ .;3.4 ... f::BL 0 0_03_9__________________________ _ DC 0 IND OP FIN OLD OP 35 ERL00040 .Q~_. __. ___ J _____ ~____ ._______ .____ l/.O_ ....A8.~./\._c9B __ ~lj~_~_t<; __ I.8§t..._~_29_____ r;:8l.,_O_Q_Q~_t ________.__ DC 0 37 ERL00042 _____.___. __.__._.__ D~____________ ._0__ _ _.'._. __._____._. .E.I.8.~.J.._.I __Q.C.~. ___ .... ___._. ________.__.____ ._.~.t3... _.f_.8LQO.Q~~___ ._._ _.___.__ DC 0 39 ERL00044 tf DC 0 . FIRST WD COUNT 40 ERL00045 I --"; ---.--.---.------.- -----------...-------- -------------.-.. --- - . ---- . - ....- ...--.... --. ---------.--.-.--.-------..----------------...... -- .-----....-..-.-.-.---------'V' DC 0 - FIRST DK AD 41 ERL00046 .____ ._______._________.___._QC ____ .. ___ . ____ O. __ .. ___.. ___________fJB__~J._I_QIA_L ___ ~{R__C_t_.L_~EJ. ___~~____E;.8.~00_Q4_1. __ .___ .__________ DC /A701 SENSE/RESET 43 ERL00048 __.__.__. ____._._____ ... _. __.D.C._ _ _._. ___ ...__ .. __ 'O. ._. __._ ....__ .... _. __..__8EL.Al)_\JE ___ARr·.1....PQ~J.I..I..Q.t'~L .... _._4_4. __ .r::8LO_QO..~_9_._. __.__.~ __..___ .__ . DC' 0 FILE SWITCH 45 ERL00050 _.____________DC_________._0.. _.... _ .______ .____ .S.K I.P... ARf'.1 _ pO $_ I..T_ L9t-J ___C_ttEJ-::_ts:_____ 4.9_~.8_LQQQ_~_1____________ .________ _ DC 1600 NONPROC WK ST END ADD&l 47 ERL00052 ...~ _______ ._________ ._______ .... D.C. ____________O' ____ . _____________ NQT.. LJSEQ____Y.ET_. _________________.. 4e ___ E_RLO_OO_5;3_________________ . DC PRIL3 DISK INT LEVEL 49 ERL00054 .__"._.. __ ~___. _____ ._ ....__ O~_._._.. ____ .__ .O ___ .__.___.___ ._._____ .~.. t. O. .S E.I__J.N QJc;..A.. TOB... _______________ ... __~ 0___ ~.8~ 0 .QQ_??_ .________________ "_ DC 0 CALL ADDRESS 51 ERL00056 _____________ ._______ ._P_~. ____________ ~ ~.1. _. ____._______._T AB~E_.R E ~p_____ ! 9 ~~_. ___________... ___ ~.~ __ E8L 0.0 0_:=>.7 _________________________ _ DC /A600 53 ERL0005S*OISK DATA TABLE--SECTOR 0 ERL00059 ~ ..---.,,-------------- -------·---OC·-----···---·--·i i .-.---- -.---.-- -- ---'r ABLE 'JJ-ORO-Co-UNT--·---------------S4---E-RLO-O-060--------------------.,..-" .___ .P.~_____._.O_. __________ ._._~s:_~_l9B__ ~QQ8.~_~~ ________.._.55._ggl:-_QQ.Q.~J_ DC 0 PACK LABLE 56 ERL00062 .____ .___.._________D.C..________ .______.Q____________________ Et8ST .. SEC __ P80 __.WK: __ STO' ______51 ____ ERLO_OO.Q::3_ .__.________ . __._ DC 0 LAST&l SEC PRO WK STO 5S'ERL00064 ____.____.:.____________________ DC ___. _____ 0 ____ . ______________ .MOD I F I CAT,! ON _LEVEL ___ ._________ ?9___ERLOO'Ot)_~___________________.. ___ _ DC 0 Q.~. ______________ Q_"_.___ ... ____... ___ FIRST BAD CYL AOD DC 0 THIRD BAD CYL ADDR -------------g~ ~ .~~~. ~~~~ ~~~ _._._______________________ .DC______ . .______ 0 .. ______ _ TA44 BSS E .0 60 ERL00066 .__ ._SE_~O'~~P. ___~_A,D____<:y.l.. __ AOPR_____§ __L_E..8LO.O'O_~7_.___ .____._- 62 ERL00068 . -.-. . . -. - -----~~ -~~~-6~6j6-----------C NOT USED __ YET____ _ _ .. _____..... 6_5.___ .ERLOO'0,7J .. ______________________ . ERL00072 _ _ _.__F A~_.___E..9U.________ :..T.A44 ::or:.A..~. ___.__ ._... _____._____._ .._..___ .____ .__._ .__.______.____E.8~_O' 9_Q.1_~__ . ________"_. ._ \ ORG FAC*DORG3*DORG2*DORGl&TA3 ERL00074 -'-'-.----~--:--:-; ----TAf3"LE'-FOR DR I V·f~·····4·-·---~-----· . -----·-------·--------------.. -- .. ----··-·--~----------------------·- . -----~:~~66~~----·----·-~-#--7-¥- -w'pr"ug"I"",uWr"·" #lJ~O"'«l "f .APPEND}~'. P, Page 3 of 14 -_·--.--fSX. M) DIITCATle::l!..~ ~~:';._ JUFroRT____ ._.__ .c _____ .._._.___• _ _ _. __. __. ___-,-_ _. _ _ .. --~__. TSX DISK DR J"'.; fS .* . __._.~O URCE .. LANGUAGE~£r~XiGE-.C.ARDS '.' ERL00077. . . ~-A.4--DC-.-.---...O----~..-------LAS T.--10CC-%AREAIl--------O·--ERLO 0078.-------__ DC/COOa . ~CONTROLO 1 ERL00079 _ _ _ _ _ _ _ _ _ DC. ______ ._0._.___________NEXT_l0C.C __..%AREAo.. --.---.-2--ERL00080-----_._ DC /COOO DC' 0 %CONTROLO 3 ERL00081 --D.C ________.Q. _________LAS T_~WD_..CT ______._._____ . __A __.. ERL 0 0 0.8 2......_ _ _ __ LAST OK ADD 5 ERL00083 c.r ..... _. _. __._._.___.___ .6 .__ ERL 0 O_08(+ __...________ -.D.C.___._.___ O. _____.. _______.__ ..NE XT.. _WD. __ DC 0 NExT OK ADD .~._ 7ERL00085 ___.____ . ____ .__ J2_~ _______9_. _____.__._ .._. ____.__~_~.~.~_._J.O.f_~ __ ~_~ 8~~. ~'. ___ ..... ____.____~__ ~gb_Q_Q.o f?_e?_ . _---' _____._.____ _ DC /C400 %CONTROLO 9 ERL00087 _ _ _._ _._______ D.C_. ____ .... Q . . _ .. _____ ._. _____ .. ___ .SENS_~ __ lQ(. ~__ ._C>:._._SEEK .._tO_ .. _ .._.lO __E.RLOO_O§.8..__._._. ______._._ DC /C700 %CONTROLO 11 ERL00089 _ _ _ _ _ _._____.. DC. ____ ..._.. _ TA 4 &36 ___ ._.___...CH E CK__ TABL E __ I OC C_._%ARE A 0 ____12 __ E RL 0.0.0.9 0. ....____.______ .__ ._ DC /C600. %CONTROLO 13 ERLOOQ91 ..~_. ______ .... __ . -DC-.--.----.-O.- -.--.--.. -------TOTAL--WD-C T. LEF-T_._.___ .~_. ___.1.4 .. ERL000.92-----.------.-_. __ DC 0. FIRST REAO/i.IJRITE . 15 ERLOOo.93 ..-·.-.--DC......---- -·O.·--··. -.-.-·-~- ._-s A·V·E--l-.--.-~..-----------.-.---..l.6. .. -ERL 0. Co. 94.________ DC 0. 17 ERL00095 . - - - - -Oc..--.--.--..-O ........ -...-"--'--"-' - SAVE .. 2.-.--.. --... --..---- . ----.. - ..-- ____ 18 .. _ERLOO0.96. __._____ ._. __ DC! 0. 19 ERL00097 _________.. _._. ___. _DC .. _....._... __ ~ 2~ .. _.. _.' _._._ -___ VA R I ABLE. &.-:-2 _._.______ ._. __________ ._2.0_ ...ERL 0. 0.0.98 _____ ._. __ .___ _ DC TA4&16 SAVE ADD 21 ERLOO0.99 - - _ . ____________.___ DC ..___ ._ ...___ ._... TA4fs17... __... ___ -SAVE...ADD&l_._. ____ ._._____.___ .22.._ERLOo.IOO_ _ _ _.____ . . -0-.---------. •••••_. _0_' _ ••••• NEXT AREA ADD & 1 ERLOOI0l -~~-.---.--- ~8.-.--.-- .. _. ____. __ ~::~:O~~TI ON_. -- --.. -----.--------~:-~:~~ ~.~ ~~----------DC 0. .- 23 --.-.----OC. _____ .___ ._.0._ .. _____ .__ .... ____.CALL . J NT. .. LEVEL .. _______.. ____..__ 26... ERL.OQ_1.04__________._ DC 750. NONPRo.CESS WORK STORAGE 27 ERLOOI05 1 NDI CATOR TABLE NEG-ON EVEN-OFF ERLOO 1 06 . "* DC 0. II 28 ERLOo.I07 12 _DC_____._. ___ O._._. ___ ._________ .SEEK_ .. __ ...____ WRJ.TE_.J~/1M_._.29_ .._ER.LQ'O.108_ _ ' ______ DC 0. CH TAB CH TAB RET 30. ERLOOI09 _ _ _.________.___ -DC_. ___ .__ _____0 ___ ._. __.____ ___ .__SEEK ... EUN _____ ._. __ ._READ.. __ ._. __ ._._.3.1 ___ ERLo..o. 1..1. 0. ____________ .._ DC 0. 'W/RBC W/RBC IN OP 32 ERLo.Oll1 __________ D.C. ___.______..O_._. __.. ___ . _ .. ___.. _. ___ GENERJ..\L._.J_~.DICA_TO.R._._.__3_3.._E:RL..OO'.l.1.2 ...._____________ -. DC 0 FILE PROT FILE PRO. SW 34 ERL00113 DC. ___.. ___ .. _._O.. ____ .___ .__ .___ __.1 ND_. _o.E _____.. ___._.J:. I N_.OLD_.QP__ .35__ .E8L.OQ_.tl~. __ .____._____.__ . DC 1 I/O AREA FOR CHECK TABLE 36 ERLOOl15 __.QC ______._O ... _________--____ .______ ._._._.___ .__ .____ ~ __ ._. ______________.3 L ... .ERL.O OJ .1.6_ _ _._____ .... . _____ • _ _ _ _ _ _ _ _ .'!.... _ _ _ DC 0 FIRST IOeC 38 ERLOOl17 __.•__________ D_C_. _____..__O. ___ . ___ .._._. __ ._. __... _.......__ .._._-____________39_E.RLO'O . Ll_8 DC 0 FIRST WD COUNT 40 ERL00119 _. ______________...DC____... __._.____O........._________ ._F..IRS_T__D.K_.. AQ ____ .....___.._ .. _A.t_ERL.OQ12_Q _ _.__- . - -.. . -. DC 0 FIRST TOTAL WD CT LEFT 42 ERL60121 _______.___ .... __.____ . _...... _._.... oC .. __ .... __ ._._/C.70 1._ ...__ .....SENSE/RE SET .. ___ .____ ... __ .4_;3. ERLO_O 122. ________ ._._____..._-. DC 0 RELATIVE ARM POSITION 44 ERLo.o.123 _ _ _ _ _ _ _..DC__._.__..___ ._O_. . __.__.____.___ E.I LE . . S W.LICH. __.._. ___._._._________ ~__ ER.Lb O_1.2~____ . ___-.-... DC 0 SKIP ARM POSITIo.N CHECK 46 ERL00125 _______._______ DC .. _... _. __ .___ ~___ 1.60Q___ ~__ ._ .. _._.NONPROC. ... '.AJK. __ ..ST .. ENP __ ADD&L .... _.~]_._.ERL'OQ12t5 ___--.-.-.-.----.--.. __0._______._._._ ._._.g.~__.____.__.__~_RJ L ~ __ ..__._." __ D7.~~ . . .~~ ~ ~L ~ ~~ ~_ ~ -.~~~g~.~. ~ ;---.- --.-.----.----~. . . ... --. ____ .__ -----.-----: .. DC 0. $10 SET INDICA~OR 50 ERLo.0129 _OC._..__..._ ... _......O..___._.._. __ ._~__CA.LL_AD.DRESS..____._______ .5.l.__ ERLO.QJ3'O___ DC *&1 TABLE READ lOCC 52 ERL00131 ___ ..___ .. _Q.C ......___. ___ /._c:60.Q__..~ ... _...__._. __... __._ ... _. _______ . __. ___ ._. _____ ..._____.____..___ ;;~.._.E.RL..OQJ.32:. __._____ *OISK DATA TABLE--SECTOR 0 . ERL00133 #-y. ¥, , , ",un :';,4" ;;"; i", "," ;.,. ·4,D,Z;X..""',""Qeu::::wt,mW,m,===il&&lC;;:MIIGi..UM&lGAlnii=hIim&(fWSillilu.,IIWtDffiliilQWliiiiiiiiWiiUJliiiiiii!iliiii APPENDIX---13---·----~-----------_;ag;4-~~-;4 L _ '.---.-.--.-----.---------... -.- -...- .. --.-,_.~ ___ ."'_..___,... __..________ ..:__ ...... _. TSXMODIFICATIONS . 10 .SUProRT--------...-:------...-:-----.-·-------. SIX DISK DRIVES ---'-.-"-SOURCE.LANGUAGE ...-CHANGE--CARDS.------,-o---.,-------_ .DC ~ ir TABLE WORD ___·_____-:-____. __._____D.c: ___________. . __9. __.__ . _______ .__.____$f:CI9.8___ DC 0 cOuNt o 54 ERL00134 ___.____________~? ___~8l__ 9_QJ_~? ~_QP.RJ=;§$ 'PACK LABLE 56 ERL00136 _:D_C--.---Q.-.---------EJH-S..l.--S~C.-ERQ... _WK._._STQ.______ 5_LEE8G______.__.. *_-4&4*DORG1.~P9L~G2~~QQB.§_;3.~'OQ.8.G~___________ T~~53JJ_.A __________________ _ DC /4000 DISK 5 TSK53118 ,___,_____.______________.Q.<:;._____._____.__ /'~f_ 0 Q__._._.. _.________ s.~_~ ?~._ J..Q 9.C __~___g 8J.Y_t;._~ _________1. ~I$ 5 3 Jl.~._. ____ ._________. DC Z1 Z&8 TSK5311 D ...•....._"._... _____________ .___ ...DC._____ ...,_____ .__ .2_5 __ .._...... _._ ... ___ . __ . ____________ .__ ._. __ .. _____ ... _ . ___ .. ____ ,._. ___ .. _. . __ ... _... ___ .. ___ ,_. ____ T.?t~~.3.1.1_:::_. __._______,______ ._ ORG *-4&4*OORG1*DORG2*DORG3*DORG4*DORG5 TSK5311F ____________________ .. _0_<; .. ___ ..... __ ._._. _I N ~____ ._________ ._ . . __.. _. ____ .__________ ... __ ..___ ._____ ~-.----.---____________________ I;;,~~_~_,+!t_. _____________ DC I N4 TSK54472 ...._______.____ ._______DC ____._____ .__ J N5 ______._________ '" __ . ___ .. ____ .._.... __ .__ "_'_"_'__ '______ ._. ____.T.SK54.47.:,1 _______________ _ 13 TADOS&l RESET DISK DEVICE JABLES TSK55330 ASTAR LOX __ ._,_________ .___ L_q?<_.____ 12 T ADD S&.2,.... _._. __ ..... ___ . ______ ._.__ .____ ... __ ... _. _____ .______.__ .._~ __I?K5~.?gO __. _______ ._. ___,_. __.___ LOX 12 TADOS&3 TSK55560 .__ ......____.__________________1:-..9_X ___ J 2 __1" APDS!,:,±__ ... _. _____________.______. ______ .____ ... __ .__________._____________._T S_K5559) _______________. ~'OX 2 0 TSK55592 ________ 5. TO _._.__~2 _ I NO 1.. __ .__ _____ .. ________________.____________ IS~55S._~3_. ____ .___ .________ ORG *-4&4*OORG1*oORG2*DORG3 TSK55594 _______ ~Q~ __ ._J?.. _.T.~QQ~.&_? ____.__._._ .. _ . ._._______ .__ . . _____ ._________.__ .____________ J~~lS..?_?~2_~ __________ _ MDX 2 0 TSK55596 --:--____.___._.sTQ___ . X4 __ tN.D_l ________ . ___ -. ______ .. __ _____ _________... _________..ISK55r.?.9..7______.__________.__ ORG *-4&4*DORGl*DORG2*DORG3*DORG4 TSK55598 _~--,- ___ .._..______________.J- P_X _____ I ~__ r ADD S & 6 _______ .. __ .... ____ .... _ _ - . __.___.___ .. __. __ T S K 5_5~9.9_______ .. __ ... ________ _ MDX 2 0 . TSK5559A _S.I.O_____X2___ I_ND_l_... _._ ..._____..._. __ ..___._______.__._._.__-_______ ._ _ _ 1.$5.5_5_598 ORG *-4&4*DORGl*DORG2*DORG3*D08G4*DORG5 TSK5559C ..__.______ ._________I.PISP ___ LOX .. t_2____ oRSU~. __.._______ :.X82I1DRt VE COUNT. __ .____ ._________ .____ ISK_5_62$'O'__ IDKOA LD L2 TADDS&l GET oEV TABLE ADDRESS TSK56290 ~-----,-._-----------~I9 .. 1-.2._1 ADDS&_l._........ _rHAT __ 0 I_~!S_... ()FF ~L I NE_ ... ______ .___ .T SK5646_0 ___________________ A 2 LOGDR-CON TSK60590 * __ R_f::_~_~_IS::_. I $_~ ? 9_.7. :?, Q__ ...._____.__..__..___ ...._..__________. _......-...-_...____._. _____ ._,_.____... ,___ ._ --- .....--._, ..- . . .--. -----.- -.------SKLLV LOX 12 TADOS(;l TEST .TO SEE TSK61080 ._O_ _. _ _ _ ---_._--_. _ .-. . . _-----.. . _._.__._ . - _._-_._. _-- - - _. _--_._- - _. __.- . . --.--.. - _. . - - --- - _._------.._ . _. - _. - .__ ._-------------- - .- - _. _._-----_. _. -"'-¢/g---------_.. - .. _---_.-------- _._--- --'Page--7oT-T4 --~-APPENDIX-D------'---- - . TSX MODIFICATIONS TO SUPPORT .. -"SIX DISKDRlVES------- ----------.. --- . SOURCE LANGUAGE CHANGE CARro .~,--~~===-~==.==========~------------------ LDRCD LD L ~BFLG IF JOB FLAG IS ZERO SKIP NPS05230 .A----L-·-----188----..:...------ADDRESS--OF--.OEV-I-CE-TABl.E----NPS221-1 O· -* * DELETE NPS22~70 ._ _~-*DEAC__.MDX __ -L_3.__._~_L ~eS2.6820 _ _ __ NOP NPS26830 _ _ _ _ _ CDEAC_LD___2._CDCON&,2 ___._,__.____________ .. ________~NeS2684Q _______. MDX CDOUT NPS26900 ._-_._---------------_._._-----------------_._----------------_._---_._-_.__._._--- NUMBER OF DISK DRIVES 2 6 LOX CLB07770 __ ..•.• _ _ _ ._ _ _ _ _ _ _ _ _ _ _ ••___ .. ____ . ____ • __ ._______.__... _ •. _ .._ _ .___._____ ._._••.. "_" ___ .' __ ._. __ •._. _ _ _ _ _ _ .e.____. __._ _ _._____.•_ _ _ _ _ . ___ ._. ___ •. __________ . _ _ _ _ _ _ .• DC /BOOO . DR.3 ._..._,-...-. _____~ _____._._O$;____.___.___.I.C 0.O.Q._______ ._.___DR,e_4_ DC CL808291 __s..L-_~Q_8.2_2~.. ___.________ OR.5 /0000 CLB08293 .._.._______ ._____. _ D_C.___ .___.. __ . /80 O.D _____.__ -D.R. 3 _______.__________________ CLB 0837..1_ . __________ _ DC /COOO DR.4 CLB08372 __~_.________:__:__----.-DC.-------/DOOO ..-.---..-.-.- ..DR.5__ ._. __._. _________. _________----.CLB083.7.3_____.___________.__ DC 0 DR.3 CLB08441 _.__..____. _________ DC ______O____ DR • .4 CLBOH442 ______ _ DC 0 DR.5 CLB08443 .__ 855. __ ..__ 3.45 _____.___.____*I.Hl S_ BSS_MUS.T .. BE __ AI __ LEASI_!__ CLB21 530 __ .. ___ ._._____. BS~ L INOIO.-Z BR. IF NON-PROCESS CLB23110 __ .___.________ .______ BSC ....__ L. __ .lNO.1 O.E _____ -.BR.• __ l.E .. NO.T_ AN_INTERRUEI ____ CLB23_150_. ________ ._._._. INOlO LOX 11 192 NO. OF DRIVES CLB23280 ,______________ LDX. __ .. .I.2 _189_________ __O _____ -INO'16 __ _______________CLB23290. _____ ,__._ ~~.~_._ . L~ ....:~.!_.________ G.E.T._DEV_LeE _.I.J;.BLE._ r?O.I..NIE£L._~.~_~~_~_~.~~______~_____ OR Ll WSOVF FLAG BIT%BOHlc.DRV.CO.%Bl-G30 CLB23350 _______________.__ ._S~LO_. ___ .L.1. __ WSOV.F_MAK._._RELA.I_LV_E_._D.1S.K_ADDRE.S.s __._.._._CLB..2_~.:3.qO __________ _ _ ._____ ._ _-EQUO'O._E au ______.__ 0 _. ________.___ ._._.____________ .__..____.____________c LDOO2..1J _______.__ LD L CLD03605 189 _ _ _ _ STO---.L_._PRTCL ______ . __________._ . __.________________.___._CLD.03606 _______.____ ._ SLA STO CLD03607 16 _s_._______ L. _____192 ..________ ..____._ _ _.______,____ L __CLD.Q.3.6.0.8_.____..____._ PRTCL&l CLD03609 .______ LDDBL .. L OD. ___. L .. _.S J GP K ___.____ ._.._. ___ .__ .____.______ .. __..___ .. ___ .___ .. _______.:.. .___c LD 03_6.1 0 .. ___ .. ___.__ _ LOX 11 188 INITIALIZE START OF TABLE CLD05750 _ _ _ _~ _ _ _ _ _.MOx.. __.__L_~.L. __________.---Of-ADDRESS.E5.-Qf=_DE.V.I.C~___CLD_05.1_5_2 STX 1 HMORV61 TABLES CLD05754 L O__ ._.L._._t9_L____________ I.N..LTIA L.I Z.LO_RL\{E._CO_Q.E-_ _ _C_LDO';L1..;?_6~_ _ SLA 12 NUMBER CLD05758 S.J.O___ L ____S_A ___.___ ..___ .________.____ ~ __.___._. ______________cJ,-'OO.~_'I:5..A _________ LOX 11 191 SET UP LOO~ COUNTER CLD0575C ._. ___.____._____._____. _. ..... __. _MD.X___.__ ._.1.__ ...l ._........ _____. ___ .__ .... ________... __ .. _._ . __ . _._. __ ._____ ._____ .________._.__ . ___ .___ ._ ...______ ..__ .______C._L.D05.75E_' . . ____ .__ .___________ _ HMDRV LD Ll *-* PICK UP DEVICE T6L. ADD. .o.C___ .___ L8 8___._____AD DB E..s s_._W_OEO.S_t9~-=-1..2-2 DC 5 ~-o----'_P RT.CL-gg________ --:~!----.-, WORD COUNT CLD05760 C_L.DJ~.9_0_·___.___ CLD14470 --.--- ~ ~ ~6E-~;·u~·~8.Q·s~EHY __.DJ~Y._T},_~___~ ~-b-i·:-!~~------------·- ..______._!__.______ .__________________.____.__.____ ._._._.__..._____.____.. ____ .____________ ~___. _._._.___~k- ()_t~~.?~. ___._._._______ ._SA DC *-* DRIVE CODE CLD14760 .______...;.*;.......-I~~_r~_QY. E_.<: LDJ~ 7. g.Q__~N.O_._ . . ~ LO J ;5_'7}.9__._____ _ REMOVE CLD17140 THRU CLD18330 * . N><.T S9--i ~~_J.! -~:~DR·&I:---·--~R 111~DD_.9f._l..QG . . . D.RY-..If\J3 ..·-_.. Q.A41 " ..!¢Z$4-f0.244%¥4A.44WPMM¥JMmwm,:· :;'": "",'0 , ;:",:::ra:.;." .•• , ,t,t.'::',n "·N,,"'·',"" .,W;;".QI",iI";;;;::'::=='=M&'''&:MWffi::tilGiltD1llLlliiAUU;;'=''iAGllGHWGWWLIL\D£i1;IWi&zaatMliniWi/Liiiliiiilli\!:\iIiiIiiIiii...liilii..,iiliiiiiiWiiiiia&i&iiiiiiiliiiai.... -~~6!~}~6---- -'7?-7 i >',\,;' -~-,........._C.~#l.tro7 ...I· APPENDIX-.B----'-TSXMODIF'ICATIONS TO SUPPORT' -----, '... ~.":","":.~>~~.- •..,---.---.",,::,.---.-•.- - - - - - - . - - -.• -.-,-,, ... -.:..,-.:.,----~' ;'-.c:---..----~---.• - ..:- ··-··---8 IX . DIS K DRIVES . . '---..... -'-" -.-...-.---;-.-....-.. . .- . .-------......--'---.. -'-'SOURCE LANGUAGE CHANGE CARDS _ .. . _ - - STX CLD17160 1 S:OG.oWlil 0 S 1>.5_. __ t_. NQ~LYI"..:..t_. _____._._.______._.______ CJ""Dl.11J_Q ________. MOX 1 -1 CLD17180 ."--_ _--"'$ T>'L __ J_.~.O_LY.I_Ct.5 ~LO_L7 L~Q LOX 11 190 CLD17200 _._-_._______.__MD~C. __l_,,_l __ ._____..._. , _ _ _~___. __._______kLQJ.1.ZJ. Q_____. STX 1 SETDR&5 CLD17220 _.___ .__ .__________.__LOK_. __Ll .._ROBUF&1..7_____XR1_P_O.l_~T_S._.. T.Q__CQL_l.8_______C.LD.l.723Q__.._______ LDX 2 0 XR2 LOGICAL UNIT COUNTER CLD17240 __.____._______NEXCLLDK_......__ ..3 .... ~6. .___._____ .___.xB_3.__ LS_C.QMP.AB.E-.IAB_~Q_I.blI.EJ~_C.J...D_1._7250.. ________ * CLD17260 ____.___-----*--IN..LT-LAL __THE._,.LO_GJ C.IA.LORl vE,.s ....._EBJ-3_0R_~Q_.__..1.O' __._ _.__.___CLD.1.72_7.0_ ..__ ~_,;.. ___ . CLD17280 -_____ ._ _. ___ .REDOA._LD. __..._____ ._l..._EQUaO _____.__ ._LQ.AD.__ H'OLLERLTtL.DRLV~~QQE._--.-CLD_l.7220. _._ ... __.__._ EOR L3 NUMBR&6 COMPARE TO TABLE ENTRY CLD11300 ._____BSC ___ L __..SETDR •. &_~_____ BBANCtL.O~_L_EQU~Lj_O __S.E.I_QB_.___ C.LD_L'I3_LO______ _ -------MDX 3 1 NOT EQUAL, STEP DOWN TABLE CLDi7320 - ___.__·_.,._____ .__MDX ___.. __ HEDOA_, _____ NQ~T_AT_END_._o.E...J.l\BLE. ,REP.E.A..L~CLD,L7...33.0_____ _ LD 1 EQUOO END OF TABLE, COr. .1PARE BLANK CLD 17340 ----:---.----------.---E OR __.____ . ___ NUMBR&6. __.____ .. ___._.__________._________________ .. CLDL735.0.._________~_ esc L BLNAK.&EQUAL BRANCH TO TAKE OFF L CLD17360 ._ _ _ _ _ _ ERCRO._MDX.__ ...L . __ .ERRLO.t.l ____ NO_L._VAL_lD_.CD.DE~No.T __BLAbt~_CLDJJ3:LO ______ __ NOP GO TO ERROR 10 CLD17380 ________.___________ .....6 SC ___.,L_. ____BA.QC.D_______ __.___CL D_t1.3.9.Q.____- - * :_S.IQB.E____SE::LECIE;Q__ Of;_V.J.C.E__ * T~~tL.~_A._QQB~_$_S_I_O_LO_G.lc..t\L......__OB_~.~.~_!-=~_:~.~______.O CLD17420 _______ ...___ SETOR_.LO__ ._L 2 __ .~..._..~________ .. ____.______.. _._________ . _______ .. _._CLOJ.. I!±_~_Q____.__._. __ 6SC L ERCRD.&ERROR IF NOT ON LINE CLD17440 __.____ .___...__. _____L.Q__ ..L.3_..~."7.~_..... ____ .__ ,_GE._T___ Q.~V_i_~f:_ .. I~t3_l,.f;___ ~.QQ.RE:.~~~_~___C.L.QJ__I~t;?_9____~_ FROM PHYSICAL UNIT TABLE CLD17460 _~-'- ______ B_O'GD_W.. __S.TO.:___ .L2_ . .~ __ ! __.. _____ ._. _________ SIOBc: __Ig__ L_()~J C..A.L __ VN.tI_. _________CkO.. LI4 70. _______ . _. MDX 1 2 BUMP TO NEXT CARD COLUMN CLD17480 _ _ . __________ .___ .Mo.x_____ .a.....·:':!+_ ..___.___ ..:_.____Tt::S.I_.EOB_.LA;ST_.. _LQ~_l.cAL._Ul~.LT__ c:LD_L7420_ _ _ _ .__ MDX *&3 LAST UNIT.GO TO CHECK DUPL CLD17500 ______~1.RX____ ~.. ? __.___._...__.__.______.____._____.___ .__ C!-.Pl.1;:UO __._____ NOP CLD17520 _. ________._______~JtQX_.. ______ NEX cL._.._._.____ ... ~RO.CE .SS__ .~ E2<-T_CO_L.LJ.t1.~ ______.. ___C_L. 0 1,.];5.;:tQ ___________ * CLD17540 * ___._______.__ ..!__ L~§.L_£Q~_P~_~_~_I CA.ILOti_. I N L()~ I ~A~___Q.~_.LY_~_CQ.~f§_~~A ~::-____ ~_l:-QJ!.?_~Q_____._____ _ * ION PUNCHED IN THE CARD. * ._.__.____ ._._._______._____.__._____ CLD17560 C !:-.Q.!.L~:zQ________ 1 5 SET COUNTER FOR OUTER ~OOP CLD17580 CJ·:'-~.RL._STX ______L._C.QNEG_... ___.... ___ . ___ .. ____.__.___ .__._______ ._______·____CLDL7.59_0________ _ LDX 12 CONFG SET COUNTER FOR INNER LOOP CLD17600 ._MDX __..... 2 .. ~ L ___ .._._._.:... _____._.._______ ..... _._ .... _________.___ ._____._ .. _ .._____ CLD 1...1.6 1.0 .. _ - -.----NOP . CLD17611 _ _ _~_ _ _ NO.L'{I __ LD__.__ .L.L_.~=.* .._.___ . ____.__.LOAD.....TEST._.W_OBD_· ___CLD.L162_0. . _ _ _ _ _ .BSC· L LILJO.&IF ZERO. SKIP COMPARE CLD17630 ----.____ ......EQR___ L2_. *:_-..~ __ .... ____ ... ____.COr.~PARE --"- .. _..__.__ ... ___ . ____.. _.. _.. _..___ ...... CL017q40 ... _. ____ .___ . SSC L ERCRO.&IF EQUAL. BRANCH TO ERROR CLD17650 .__ ..MO)<_._._ .._2 __-.: 1 __ .... ___ ._ . ___.... B.L.J~P .. C:Of·'PARE . COUNTER. __ ._________c:LD 1.]66Q ____ .. _. __ MDX NOTYT BRANCH FOR NEXT COMPARE CLD17670 LIL~O MDx 1 -1. NO EQUAL. MOVE TO NEXT . CLD17680 LOX 0 -----·~1"6x· , 1 - -. · - - - - - - - - - . 1---··---.-'.-.. 1 . ---·---cH·ARl--------..----· --.-~-- -.---*-.~-----~~P.~- .. -____ .. ______E3~~. 8I. _______ .____.... ·-.. . . --.. ---.. --.. CL 01-7 690------- --~-.--.-.-.----. --·---··-·--------------i-t~i~-~i-6~-ffo k' ----:--""'-O"-........,....,.----.;..,,;,~--,--.:~14G7 . . ±l......... -: _.-----..........,....o;.;..~~ .. ...,..,...;.....-~. page--c-9-·-iD.fL-14~-- -APPENDIX-'-'-B--- -. - .:··.TSX MODIFICATIONS TO SUProRT. :.. . . ~~'"7'-~'~---'--'----'-SIX-'-DISK -DRIVES -.--.-~.------.----'----.--.---:-:----.-SOURCE . LANGUAGE CHANGE CARDS '. . -:---_"---.. . ---'------~-------:...~--:.... -~.. .. _···-,,0_.' ",,",.",,-,-.....---,-_.___: PU_T_· .. ----:'":'-:"'--.,--- _~_~_~_=~~~_~~!_~~~ V ~_~F~_L_.~_~_E_.____"_________ BLNAK SRA 16 ZERO THE ACCUMULATOR MDX _______ 8_0GOW_. _____. ___'_ _. ___ ~.tg~;;~g-----CL01774Q C.LO.L725 0 _____ _ * * CLD17760 CLDj_.7..1.7_0_ _ _ _ _ CLD17780 _ _ _ _ _ ~.~~.8T __ t__Q.~___t l __S.Y.X.RJ __ ._____RgS._T9B.E.;__ JNQ.s...>5 ___8g_GJ. SI~B_S___~_l,._Q_l12??.P__._____ _ LOX 12 SVXR2 CLD17800 .,..>t.-.. - . - - - - - - - - - - - - - - - - - . - - - . - . - - . -.LDX 13 SVXR3 CLD17810 .. ---.-----.--. -- -- -.- .. _ •.....•.. -.. --. ---- .. - - - - - - -. --.-.-.. - .. - - - - - . - - - - - - - . ---.-------.. -. - - . - - - - f SSC I INTPT RETURN CLD17820 ~ * . CLD17830 . ~·-··--·-·---··----·C C-N F "G---O·C··--···-----;=;-·-·c-·-..-·-----·------· C LD 17840----- ...:.._.*_._____._____ _'__~___ .---,~----_ : I l-'______. __~_U!~p..R . __O_<=-_______~Z_Q_O.O'___ .__________ O_.___________._______..~_~_O_1..7.§~Q..______.__ DC /1000 1 . CLD17860 '. ___ .__ . . _____ --___________ .D.c. ________ ./..0800__ ·._.. _~_._ . _. 2.______ .___ .___.__ . .____._.___________C_L.O_L18_1.Q _____.-' _____ .; DC /0400 3 CLD17880 -, _..... _____.~ _______ ~ ____ DC... ______._./..O.2 00 __________ .4 .. __ -, _______. C.L.Q.1..7..82 0____ _ DC /0100 5 CLD17900 .... ___ ._ ... _ _ _ _ ..__.____ ....________.DC ____ . __ . ____ ~Q_O_OO___ .________ 8I,..AN~____ ._. _____.._____..._._. ____._____c.L_Ql...7.2.1..0_______.. STX L3 SVZR3~1 CLD23401 ..._...... __.___.._______ ._. _______ ._LDX ____ .Ll __ .1.ea. ___ ~__ . ______ X8_CJ:~OJ~.r..S__ TO__ LQG___ Of.'-v__ ...IA~ ____C_~D_~~_~~..Q_....:__________ REMOVE CLD23640 THRU CL023840 _ _._________ ._ ... L OX ..... _ ..3_._ 0 __._________.___~_J.N.1..I__ DRY._C_O.D.E ._.:LO __ .ZERQ... _ _.._ ....cL.D.2~36..40__._._. ___ STX 3 DRIVE CLD23650 _____ .____ L Ox. ___.l 3 __ 1..9...l ____ .____._________.________ .___.__________ C_LD2_3.66 0_.________ _ MDX 3 1 XR3 IS LOOP MONITOR CLD23670 __..__._________.___. _D.E_~_Q__.______ . . ~_5_.._.~_._._. _______.__._. __ .__.____ bJ:J?_Q_-'-~~_~_. ___ . __ SCT08170 ___§.!.Q_._. __ ~~.l _ . ______._..___ .___._____ . . ___.________ . ___~.~ TQ.8 t?O~'_" ____' LOX 12 *-* AT XEQ TIME,ADDR OF INST SCT08190 _ _ _ _ _....:..:..*BEMQ_\lE. __.S_C.I08.?OQ __._.._. _.___ ._.___... __________ ._______.___ .___.___________________ .___ Mf::)X J 1 DLOGO SCT09660 . __. _____.______.__._.S_I.X. . _. ____ .1 .......*.&.1 .. _.. ____._ .. _._..__ ._._..._...._... _. __ .._. __ ... _......_._._.. __ . ._...... ___ .___.___ ._____ SCT09.670 .. _. ___.... _____ . . . LDX 12 SCT09680 L.D____ L.1.__t.). A.OB.Z(S_C___...~.-NO-J_--s.A.r'1J;.-D-t~K.-£-o.-~PJ,tS SCI09Jp_2_0 _ _ _ _ . MDX 11 DLOGO SCT09830 _.______________..$.I'-'_.. _ ... 1_ .....~& 1 .. _......_. _.... _...... _._. __..... _.____ ..........._. ______ ..... __...__._. _.. _._ ... _. _____.____ .___ ~~I.O_~_C3~.9_..____ .___ . ____ .. LDX 12 *-* UPDATED SCT09850 ____f:.:..... ._. __..L.. _. . __.[)_LO.G.O_. . ___. __ ..____._____....__ ._____.___ .__ .______ ._.___._._ .._______.. _.____$~_I.1_~.:3§Q ______ . _ STO *&1 SCT15390 .l.,.QX..... __J .4 ... _~":".!. ____..._____ ..._... _. __ .____..... ____.__________.___ .~I.l?!!.Q.9_ _ _.____:*REMOVE SCT15410 AND SCT15420 A L DLOGO *-* _ _ _ _ " _ ... _ . _ _ ._~ _ _ . _ . _ . _ _ _ _ _ _ ~ _ _ • _ _ _ _ • ____ H _ _ _ _ • _ _ ·~_. _ _ . _ •• _ _ !/J;b •••• _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ " _ _ _ _ _ _ • _ _ _ _ _ _ _ _ _ • _ _ _ _ _ _ • _ _ _ - - - - - - - - - - - - - - - - - - - - - - - - - .-----,- o -----..,,-.-.------- . ----·. . --------····--··--·-----·APPENDIX--·B---···---------------. TSX MODIFICATIONS TO SUPPORT Page 11 of 14 ~.-------._._. ---.----.. --.------.-------~.---------.---.--.--.- ---- --- SIX DISK DRIVES·-·-·--------------·-··-----··-----SOURCE LANGUAGE CHANGE CARDS #1407-1 r'tJ DC ONECN DEL06251 ~-~:...------------------·-·----··.. DC·-·-·-·-··-·-·-----ONECN . ---.---..-.- --..-- -·----------·----..:...--·---··---------------·----·------DEL06252---------DC ONECN . DEL06253 . ____ .. __________-.G \JJ SAD...._LDX ___. 1.3 DRN UM __ .__-->- _____.__ EOP_025.2_0_______ RPLDK LOX 1 *-* EDPI0140 eP.LND_._S:IO__.._.__ L_l __ ~__:_~ .. _ ... __. ___ RES.T.QRE ._THE. __ ENTRY______._____ . _____ED.2J'O __Lo,o___.________ . LDX 1 *-* XRl N NO. OF DRIVES EDPI0610 _SIQD~_L p______ L_L _~_... ~___________ .______.______.________ f:_OEJ _0_02_0__________ _ SA DC *-* DRIVE NUMBER EDP12080 H _ _ . ____________ • ___________ • _ _ _ _ _ _ _ _• - _ _ _ _ _ _ _ _ _ _ _ _--"6S.C_~ ____.~______ .___.. __ ._____ ._.1_S ___ A.g_E~._._CJ)QE___ L~S.S __TJ:L~~_tp_O'.$.Ko_tQ~O_______ _ MDX PSTVE YES DSKOI042 ..._____ - ___________________ LDX _____ 1. ___5. ____ ..__ . ______ ._ ... NO. XR 1115 __ 1~ __ AREA._CODE~2_5_____ D.sKO.l.043____. _______ .___ _ MDX L GETAB&1.11 SET UP FOR ERR CNTR IND DSKOI044 --0---------------~J~_Q_X___._._____ ._!_ &..l_. ____________ ._____________.---.--.. ---- .--.-------. -- - ---.----- --.------- _________Q~t5.0_1Q~-§---.----PSTVE LOX 1 2 XR1h2 IF AREA CODE IS 9 'DSKOI048 ..~-.------. ---------- ----.. .. ___________. s-8A._____.___ ....__l._l_. __.__.____ . ._._. __ J?QSJ.IJQ~_._8.}~;:_~___ ~OOt;:_.AI __8.I.__ Q_~.~Q_LQ_:LO______. STO AC SAVE HEX AREA CODE DSKOI055 ----- ~;~--- --~ETAi::- ------~~s!lHE~ _C:ODE._~_ Q8_?5_ ---- --6~~~+~~6---?Lf3 -~,..,..,--~-. --:--__'. '~---:--- APPENDIX B 1~a~e_1.2~r" 14 TSX IDDIFICATIONSc-ro SUPFDRT ---....'"'-'--------- #14071-1· . ___.___. .__._:----------:_-.--...:...------ _. ____ ~~_._._. __. ___ .--..-------.-.. . --. -.--__ SIX DISK DRIVES . ----.--~-- . -_._-,------;0_._-'--_._--------_._-- SOURCE LANGUAGE CHANGE CARDS '> - - ' - _ - : - ._.--.. _ _ _ _ _ _ - - a -_ _ _ _ _ _ _ _ _ _ • _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ MDX 1 -1 NO.SET XRl FOR DR CO§lOR4 DSKOI080 .:._____S.BA.____ -' __... _~______. __.___.____.________ . __...._. ___. _____._.____ .___.__.____.______O'_S_I<;.OJ_.O~O. ____._______ . ·sse E· IS AREA CODE 8 OR 24 DSKOIIOO _~_ _ _--,___ J!1DX-:..._l_=~ _________.___ NO__t_SE.I_.xRL_.E..QB_DB. __CDll.o__QR3__ DS_KO_LL1..Q_._. _____ · __ NOP YES DSKO 1115 d _______---'WG.EI.AC--STX--LCVEDP~____SA...YE . __ DRtYE_C_O.D.E _____._ _ _ ~.sKQ.. Ll.2O' ______ MDX 1 12 SET UP FOR ERR CNTR IND DSKOl125 -LQ_.-----.c_V...EOe _ LQAD_.DRJ V_E_~.C.oDE _______ 0.5.KOL1..30 ______. SLA 12 SET UP DRIVE CODE FOR 2ND DSKOl135 __..STO ___.. L __ .__ NUMER&J ._._____.___ .WORD___OF__ DJ.SK___LO'CC ________DSKO.l.lA'O.__ . . _ ..__.___ . LD AC GET HEX AREA CODE DSK01145 .SRT___ -_.4.. __.____.___ .__ CONVERI__"LO_... ES.CD.1.C ________..._.DSKO.. 1.150__.______. SLA 5 AREA DSKOl155 _ _ _ _ --'-_______ SLT____ .__.._4_____ ._______CQDE ________ ._ ____.____ .0 SK01.l.60__.__ ._____ _ , OR HFOFO DSKO 1160 _'._.______________STO_. __ L .... _.PAREA&6_____ .____.__ STO~E __ J.N___eHJNT_.AREA ____.___. __ OSKO.L120__ ._____ _ GETAB MDX L1 *-* MODIFY XRl FOR ERR CNTR /FOFO EBCDIC MASK DSKOl175 .STX ___._l ___CNIR.. _. ____ ._~I.ND __ A.ND__ S.T_ORE. __ LI_..___----DSKO lJ8_0.___ ._~ ___._ HFOFO DC DSK01565 ._ _ _ _ *.REMOVE_DSKO 17.30 __ THRU__ DSKO_L8_0Q_ ... _____._. ____._~_____ ._________. _. _________ _ *DELETE DSK 02290 AND DSK02300 ___CMIH__ DC_______ ._Q_____..___.. _. ______.. _C91~LTAJ..N.$_._C~_T8_._NQ..£_QR__________ .D~KQ2_5.~;:;__~ _______ * HARDWARE ERROR DSK02526 ___.•________.ST.O _______ ~A.REA&9.___.__._____CQ.8.ELQAQ __ .N~.M.~ ______...._J~.~J'50;3.5_9.0_. ___. ______ STO CNTR ZERO ERROR CNTR INDICATOR DSK03780 ____LD________.. _.....Ct-lTR_.__ .. _. ____ .. _._.______ .____.______________ . _______________ .O_S..lSO_=i~_~O___________ _ *REMOVE OSK02830 THRU OSK0285Q AND DSK02890 .__.__._____ ~ __*R~MOVE. __ .D.sIj:______.___._?~.~J~.__ .?~~ __ •____ . __. .2310 25 • EBC CEAOIOOO ____ ._____ _ ~.~~~E~ ___________________~~~9_L9l9 CEA02011 _____ ~~~.9~.Q.lE CEA02013 .--_._______EHCI___._..EPU..__. ______ .. /FEF O .. _.. ------.- OUTPUT AREA ______ .. ___ ... __ ..__________CE800 540 _____ .__ ~ ___.___ .__. LOX Ll 114 TO BE PRINTED OUT CEB00670 ___________LQX-..__t_9_.___._. ____.........._. _MA~ __ NO.__QE_lJ.N.tJ_S__T_ttLS~Ey___C_~6_0_L2...t~_ __ LOX II 193 CEBO·1250 ___ . _.__------.-------- _t,.. Q)< ..___J 2_...18_.7_. ____ .__ ..____ ._.._ .___ ___ .. ________ ._ __._._. _____._______________ .__.______._c:~ BOJ_2 6 0.__. ____. ____ _ . _~~~_____ L~._.~~FF&8 __________... __ . ____~________ . _..____________ . _____ .__ . ___ ._~~~~_~.;~~ ___________.____ C) LOX 11 187 CEB01780 ____~Q_~_._. ___1_J____J. 2.~ __._. _____.__ . ._._._. ____. _. .__ . _. ____.______.. :_____ .__.... _. . . . ______<;_~~~l_E?.!.~ __._~ LOX 2 7 NO. OF LINES OF OUTPUT CE601840 - -.-------------~-~.-----.- ----.~~----.---.-------.---------.----.----.--- . . ------.---.. -.---------.-----.. .-·----~-~~6·~~~-6--·- ¥-M ---.ffl~Q'H·-------TSX M)DI~i:~~;;:3Bro- suproRT _____I'age . ~3-O:L~lt__:_~\ _____,____.____ , ___ , _._____ ....___ ..._______._, ___ .__. __ '... '_' .... . SIX .DISK DRIVES .... SOURCE LANGUAGE CHANGE CARDS ,________.. ___ .______ .. _.. _____ .. __ .___ ... __ I -- --"'--' ,-- -~-." .. ---_.._------_ .... -_.'-,------------K2 DC 2 TEST IF 1053 CEB02920 - - - - - - - K 6 , - - - - - - . D C .. ,-- -.. 6--. --.-.,--.--- .... TEST ...IF.231D-...... -.. ---.------------.---CEB02960 ..---...... - ...,----____ . S K6 CEB03840 -------,-.-------.------. L DX.-.I. 1 .. -1 93 ...._. ... _______,__....______ .__ ....__.. _________ -_' ______________ ._ ... ---CEBO 395 1 ,.. ---.--.... ,- .. STX 1 *&2 CEB03952 _________,_._. __.__ . LDX._ ..... "l. 6 ___ .,_____ ..... ". __ .,_SET, _TO' __ MAX. __ NUMBER____ ,__ ._.... __~ ______.__C.EBO,3.960 __.____.. ___ ~ __. __ HSEEK LD II *-* TEST IF DRIVE ON LINE __.._________________________ .5._.. ____ L_. K6 DIV DC USED TO CALC NEXT /1000 /500 D _._. __________ ...__.______ .§..~. ___ ._ ..... __ pC DC -._. ____ .. __________._.... _ . ___ . __ DC...... DC '_____._..____ .. _______ ,_... _____ .. __.___ A ._ .. _____ . __ ,._. __ .___ __ L... CEB03970 , ...... _____ .. ___ C.E8.0.4J 00.__________ _ DRIVE CEB04191 ...... ___ ''' ___ ''''. ______ ,_".___ .__ ._~~_~Q~_?_2.2_. /3000 /4000. ______ . ___.._. SKA04000 . ..______. ___ ,, __________.'" ._.______ ._._SKA040 1 0 ___.. __.______._ /5000 188 SKA04020 .. _. ADDRESS OF___ DEVI CE"T ABLE .. _ ._. SKAJ 6140,...... ___ . __ *REMOVE SKA16400 ---------__ .. __ .. ___ , .. __ .... _._.... .LDX . I 1 LOAD ADDRESS OrDF< I VE ZERO DEVICE TABLE 188 STX *&1 ..--...-.----------.________ ..... LDX . ,1 1 *-* n--·-.. . .·-..- - - .- ,- -, -~- LDX I 1 STX __ . .1 ,*&1 I1 LDX TRL01581 __ .. _.._ ._TRLO 1582 ...._". ___ ..__ . GET FILe PROTECT STATUS 188 . ___ ... TDD01290 . __ . ____ ._ .... __ ..._. _______ .TDD0129L. ________ .. .*-* TOD01292 r--1DX _.-.. 2 -5 . . . MDX STI LDX. 11 187 STX 1 *-1 -------___ ... _....______ ._.__ .__ . _...... ______ . LD - _ L2 *-* DCON&l LD L -.~. _______ .___... _. _____,_, __.____ .____ .... _____ LDX ..... 12 STX ____________________ ._.____.___ . ____.__ . __ LDX. . ___IRL015S.o . _.__ .. __ .... 188. 2 *&1 J 2._ *-~ - -.. . __ .. BRANCH,oACK TO_ S11 IE ... , __ .........ID.2.00810. ___ ..__ .. _... ___.. CODE ILLEGAL TDP00820 GET LOG I CAL __ DR 1 VE ..._. ______..___ .. ___ TD~.O.082L .... _ .. _ ..... _'. ___ . DEVICE TABLE T9P00822 ADDRESS _. __ __ ___ ___._TD~00830. _.... __,._ . TDP01630 ORIV~ _LOAD .. ADDRESS. OF. _______ .. _. .:.. ____ ._ ,_TVPOO.4.8Q ______... _________ DEVICE ,.. TABLE_ _ __, ______....... _______ ., SAVE BAD CYLINDER TUP00481 TUP00482 _____ ... ___________ ... LOX 13 188 TUP00840 ____._____ ... ___._____... _ ..MDX ........ ,3 _..1 _.. __ ...... _, .... _. ___ ADDRESS _._.... __...._____ ._, ____ .. ________ ....T,Ue.0084.l _______ ,__ ...._ STX 3 *& 1 ON TUP00842 ._. __._______ .___... _____ ~ ______.__ ._.LDX _ 13 __ TH I S_ __ ......__ ... ___ .. ___ ._.___ ._... __ T_UPO.Oa~t~____ .__________,_ ...__ _ *-* L 191 S ._...,_____._______.__..... _____... _ ......L D X ,_." .11 1 88 ... STX 1 *& 1 __..... _ _ _._______ . ____ ....... _.____ .. LD ... L2 *-* AND L ~9~===--=-~-M~S-~~-~B~---· 5 ...._____._. ____.-:::...... _____._.______ .___A. LD - - - - - - - - _ _-------------._. .. L HOOFF ...•... DR .1 V L 191 187 Xl 0 . _ . __ AND BRANCH TO ERROR TDL01890 ......... _. ____ ".......... __ .... __ ...... _._.... ~, _____._____,_TDLO L98.5___... _ .. _ ... _..... _.. ' TDL01986 BRANCH TO ERROR RO.UT I NE _______ .. TDLO 1990. __ .. __ .,. TDL02340 E.CODE:~.~~E·~._ .~. ~_:.~. ·.5 •.•·• •~.·-.•.·:~ •.~ T.~~~:~.~~:~~~~.~~.~~_ 3 -4·.• MUST BE 0 1 2 3 4 5 _.. G~l __ DI SKN ... OEVICE . TABLE, A.DD TWA00850 TWA00865... __ .. ________ ."_ TWA00890 - .:--.----.------ -------. ,._!t£!;--. '. ;-.: ~____.__. . ~'::'"~' ".'.:'."~:: .:-'.~'~.'.'. ·~c~, - . "; . :.-::'.7 ....;::.. ' '.! :-~ ·-f"';:·''r .APPENDIX B..~_______._______._·_~'._._'.'... PEige14()iI4, , TSX- IDDIFICATIONS TOS UProRT. . . " .. . ·.;i.~( ;:;~));::<~:.~'{};&1;::.rt:~;t~f.~~ . '. - . ' ..; . SIX DISK DRIVES '. -"'~~""":~~~'-'-~-..._ .. -:.-.. •.---.----.--.. . -.. . . ---~- .... ~-.-:-.--~-~·--SOURCE LANGUAGE CHANGE~CAROO------~_:_-----·.•-.... "-:.'_.... -~A.J ....-.-.-..,.---.;.--~ ----~-~--~.-.---~-----~-~--:---.------.-.-.:..--:---.. DC /1000 2310-3 BT1.0073i· ..." ~,.........._ _ ~.C___ ~..A.7.JLO - ___- -________..IoJB.I.l.cLO...:u~__ ·. ___ .. _.__ .•- : .. . --- DC /1000 BTI00733 231q-4 /J:..7-0-01oL·---------_ _ _ _ _ _ _...--_ _ _--'B'-l.UO.QUl,~i:_____.___ DC /1000 2310-5 ~TI00735 n.C-·_ _ _ I-.CE.OO BliDD-23£)_'"_. _ _ _ _ --..-DC '. '; \.1 t' ---------------------,------------.---- DC ..._-----.-________D.c.. . DC OJ: ._----- - - - - - OC /1000 &:1-0_0 /1000 BT2002?1 B TZO_QZa..g_"... _ __ 2310-4 BT200283 LC.7_0.0'---__ 6I..aCtO..z64____ _ /1000 2310-5 BTZ00285 ___."-_ _ _--:-_ _ _ _ . Q~___ ..LCE.Q_O_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _"""'B~T~2CLO_=2_=8_=_6_ __:..._ _ ~ -- -------A ..... ~ L 2310-3 MDI02590 188 * * ___~*...R~O~V..Ej1D.IO-Z.aQQ-----_-----_--------------"---____---;-_ * * A L . 1'88 . MDN00440 ~__~___*REM~YE ~Q~~997Q __________________~.____________________________~.~ .---r-"~-----'-------------~---------- - - - . - - - -..,...--.---.. --------:-- .oC _ _ _ · _ . _.•. _ . _ . _ _ • _ _ .• _ _ _ ....,... _ _. _ _ _ .--------.-----. . ~._. _ _ _ _ _ _ _ _ •_ __ _ ' _ --~- 1 -! g mq 05/360 FORTRAN'REREAD o A. Known Restrictions 1. Itl its present form, REREAD did not work for a program which the E-leve1 compiler suggested subdividing. We got around this by . MAINLINE: CALL RR Etc. SUBPROGRAM: SUBROUTINE RR CALL REREAD RETURN END This apparently let FORTRAN handle linkage conventions for a module small enough that use and nonrestore of register 8 by, RE~ did not hurt us. 2. We have not 'tried it (REREAD) with data sets organized as direct data sets. Author said it will not work. 3. REREAD will not work with a variable for DSRN: o READ (J, 3) list 3 FORMAT (etc.) is not possible. 4. As distributed, REREAD is for an E-1eve1 system. If your system includes G- or H-1eve1, or is restricted to G- or H-1eve1, statement 3 of the Ass~mb1y Lang~ge source code should be changed to EXTRN IHCFCOMH ·S. As distributed, REREAD uses DSRN 19 for REREADing. To clloose ano~her DSRN (~99), change statement 44 of the Assembly Language listing (as distributed) to 119 DC F'xx' where xx is the DSRN you desire to use. Author says this number is independent of number of DSRN's chosen at SYSGEN'time, and that a DD DUMMY card does not have to be included. , B. o Use 1. It is necessary to issue the statement CALL REREAD I once and only once for each FORTRAN program in which RERE~ing is to occur. This call must be executed before any REREADt~~ ts,kes place. . 2. After B.l has occurred, REREADing is accomplished by READ (19, f) list where f is the FORMAT under which REREADing is to occur. 3. Any number of READ (19, f 1) listl READ (19, f 2) list2 READ (19, fn) list n can occur for the same buffer load. 4. An application: User reads cards whi~h occur randomly with . respect to type, but each card contains its type i~entification in the same field (say, Col. 56). Let DSRN = 1 stand for the system reader. Then READ (1, 11) JTYPE 11 FORMAT (55X, II) GO TO (aI, a2, •.• , an) JTYPE a1 READ (19, fl) listl , GO TO b1 a2 READ (19, f2) list2 GO" TO b2 ~ READ (19, fn) list n GO TO hu will accomplish this. c. ·Function CALL REREAD ~ubstitutes the address of bbb for the addres$ of FORTRAN I/O area. F~OCS tn the " Each subsequent READ (n, f) list passes through bbb, where the pointers to Q~~fers are saved a~d it is ex~ned for DSRN ~ 19. If DSRN ~ 19, then the control retturns immediately to FORTRAN I/O for a physical read. If DSRN = 19, then the buffers are restored to their condition for the previous READ, physica~ reading is bypassed, and control is returned to FORTRAN I/O for FORMATting only. C" . " ' . ' , ' " . ~ . _ ' " . ' " ~ _ _ _ _ _ _ _ _ _ _ _ _ _ • _ _ _ _ • ___ ,_•••••'''_......w''''..'..''''.••• ;' ?·WMfLj·tWtttfltjf¢ijlw· fr"" ····.,iffii:ttttft¥Cj,fflri·.. ""\"'JtHitRtWt'!lIrrr i!iI!fWU' W ~3- D. Author of Program: Tom Vaden IBM Baton Rouge) Louisiana E. Presented by a Successful User: C ~:· .' Wade A. Norton Chief Analyst) Computer Group Southern Services) Inc. Birmingham, Alabama 35202 etJMMO'" T. pili'." .~, TAi$ J Pllr. W&6 p,tlS... .J..J ~ N. ~$ s. . ~e S,.,,,,.,..,.~'''lly J."~,,, it .L,s"'~, of .. /). o. s. Sa"',.",,"""''' e.,,",",·N"~ o • ••,/, ... c. ...1 ~ .. tAt- "ac I.. w-s J,·.+rif....,+-.I +. """ J). :*t .. I ... tied AS' .1 .. 4" ~,. ~.f!~. rt W&I B,·',....: .. , l4&e w;~ D.D.S. N.t,.,..J tn.. o. S .. .••• r/o,,-, • (',,,.~,.,,,,,,&.,., h.~';', #s ~.ftI\ .atl",,'''e~ ',.+.41 -, wit. . . . . '.+e, p/"'. P..,e ,., J ..... M.II.~ it por HA.~. II _, $.",."1..,.,,., (II..,) J4D "$& ll'I,,.D WI'" '/)IJ.'. '6~rItAN. o .. H ...... ".r.';'~_, ~A. ~III.'AD· A e"" _, .,.1.;. .r~M (t.,...., ",lte C,,,,,·c,;",.., ~,.... J 5." ~r... e l l " '-.,.,,, "" ••+... ,s, ........ ., ,,~ -'" "*.~ ..,. .. ", . ..".,. •• :....,~.>jo;,,<. .-------~-----.-" -----~- ... ,0 . · .... .. , 1..-.... ~ .. :Pusl~ J/er $ /vQp/'. It~:/E/-l j:;; ~l.5 I -.-;:- S v//?h..v'~g<0(/I/4n/ ~. sP;. :0' .~ IIREREAO Jba ~SGLEVEL=1 "IISTEPl EXEC A$MFCL,PARM.lKEO;(MAP,lET,NCAl~OC) IICQ,y'P EXEC PG~-1= I EUASM IISY$LtH DO OSNAME=SYS1.MACLIO,OISP=OLO IISYSUTl 00 UNIT=DISK,$PACE=(11bO,(400,50»,OISP=(NEW,PASS) ~-IISYSUT1 DO UNIT=OlSK,SPAC~=(1100,(~00.50» .. -. __ .•._-----_._- ----.:.--~------- _.. OOOOC010 - ... --.--------.... 00000020 ---~-.- ... --.. ~ ,-"".", ... _- .... - .. _... __ ..• _.... ~ - ... - ,- 00000030 00000040 IISVSUT2 DO UN[T=(l)(SK,SEP=(SYSUT1.SYSUT3»,SPACE:(L700,(400,50) -IISYSPRINr DO SYSOUT=A IISYSPUNCH 00 oSNAME=&lOAoSET,UNIT=OISK,SPACE=(400,(SO,10», II OISP=(MOO,PASS),OCB=(,OlKSIlE=400) IICCMP.SVSIN 00 DATA lEF23bI ALLec. FOR RfkFAO COMP STEP1 If:F237I 'SYSLIO ON 1<)0 '''IFF237f SYSUT1 ON 190 tEF2371 SYSUT3 ON 190 IfF237I $VSUT2 ON 191 IFF2311 SVSPUNCH ON 191 tE~2311 SYSIN ON OOC 00U00050 00000060 X00000070 00000080 _____.______ .. M_:. ___.MI --....! ..---.- ----. --.--.--.-.. -.----..-.-----..-.-.-.---..--..---.-........_. ----.-......--.. . -- . . .J .. -. -.-.__.-_._-.-_-_. -_.-~===~=~_-=-----.-=~==~=== ______ . _ _ ~=.==--~- _ _ _ _ _ _J .- - - - - .------.---------.-------.--------. .------._-_.... ---.-- ..._- .--...... _._--._. I -------~~~~----~~-~==--J __ _-------_._-----_ _------------_. ... . •. I ".. _._a .. _..._______ ._. __ .______________.. ._---- ---------_._._-------_._.._- ..- ._-_.------_._--------_ .. _-_._._ ..- '----------_._--_ _.__ ......_....._-..._._---_ _------------ --------_._--------_. ... I -""'-- ... - ...... .. . _.. I __ •• _'M _ -- " . . . __ II __.._._-----: . _----.---_. -..----.-------.-.--------------- .- -------.--... -...... -.... - ------·---------~·c---------- .- -.... -----_. '- ._-* ... __... _. . .- .. -.~ ... -.- .----~--- ------_._._._-------_.--------------.-----_._--_._-_ ... -_.------•. __ ... -._-------_._._._--_._-_. ---- - - -_._-- ...... --.- ... - ._--- .... --.- .. _---_ .. -._- ------_...__._-_._...._._._--_ .... __..-.._---_._.. _-_._-- _-._-_.._. ...... . .-.!._ .• 1_ ..... _.......___ .. 4 _ _-----o- .... ---..-.. ___ ._.__. ______________ . ___ ...._________. . . ____.__ -.... _---.... .... -. ~------.-.- .-.. -~ .. ~-------- --_. ".;-! t __ •....• ---_....:-_-----' -~-----'" ..._--_ ...... _ .._ - _ ...._ - _.. _- ... --- .__ .. --------- __----_ - __ .... . .... .... --- ...- .. _--.-- ...- ... .... -..- ........ _.-- --- -.. -: . . -~-. --.-~-.--. .-.--.-----.--.---~. -.. ----'-'--'-'. !.:..~-~--:-~-.'-, . -_._- ....... --- .... - ..-_ .. _ _.... _--... _-... . ~ --- .. ..... .. ~ -~ " ... _.- p -S VM B' ot--_·-t y p t'-' J 0-'- -AC0 ~ ... L F NGTH . L'0-'1 O' ._-. - - - - -.. E ~ T_ ~.~ ~ A~__ .~Y_~~9 !:.-~}.~!-I. g-~~~~ . PC REREAD LO (HCFCOME f.R 'HtCFl aSH -.- FI( --- 01 000000 000002 000000 02 03'" - ~ .. 00'-AGE 1 ----- ...(' .30 10/29/61'-"-- _ _ _ _ - : - - , _ .. F. _ _ _ _ _ __ ._----- -.-~ 01 "-'-'-'" .__ ._---_._------_._-_.---------------_..._--_._-_ .•..._--_._----_.. _... •••••. _ ••••• _. L __ .-_ ..... --- -- ----------- •• _. __ •••.•• _ _ _ _ _ _ _ _ _ _ _ _ ••••••• _ _ _ _ . • _ _ _ • _ _ _ •• _ _ _ _ _ _ _ _ _ _ • -::--: .----'-.---------.-.. --~.- •... -..--- ----------- ---. _._-. -----.-....-.... ---------i ! .. - .... ~- .. ----.-.... ,,-~ .. -- .. _..._-_........ -_. -----.-. --_.._ _.__ ..... _...-._--_._._- .---.---.------.-----.-.. -----.-.---.... -.. ·.· .. ·······_·-····· __··_-_·---.-1 ... .....• ".- ._.----.- 1 - .. __ .__ ._-_.. _-- ...... _-_..... __ ._-_. .. -.- ......- .... '--1 - - . - - - - - - - - - - - - - - - - - - - . - - - . - - -.•.. - - - - - . - - - ... ------ •.._.,....--1 "'-1 --1 -_._--_._--- __........-._.- .... __..._-_ .. ... _. -.• -_. -., ...••.•. _. --_._......-. --------_._-_._--_._._--- -_.... -----_ ...._-------_. ) __._--------_ -... '---'."------' --- -... I ------~ "1 .. _..,...- -----0--·-----_. . - . . . -. _._-., . '1 o o .,.. .,..:.-.-- "'---1 '.1 ~".-- _._.... -.-. , ---- - ..- .•... - o .... .. ·t··· .. _, ··-~"------'--t·--..4"' .. ~ ADDRl AOOR2 LOC" OBJECT CODe , ....• ,". STHT - -.. ·.. ·-~··f-·- ..-···-·-·-~ .. · .............. -"'~' "'- 000000 000000 000002 000006 00000/\ OOOOOE 000012 000016 OOOOlA OOOOlE 000020 000020 4 '.) REREAD l08F f I ' . 0···· t I , • '. " .. . .-.. -.. . . -.. ' • .. .. 00018 4000"'8000--'00000 BOlC BOAO 0058 16 ZlZ "" :. 00000--'0003C OOOCO ' - . 00078 061967WN 061967WN .....------... --....... oooca ?,g~g BO/\8 STM 4,15,SAVE 1 ~g~g ~gg~:~ ~!:.; ~g~~ .- ...... -.. . ............ '-";~ g~ggg g~g;~ .. --.-----.---- . . ... . . . 000018 0000000000000000 oonoco OOuOQOOO ;00.QOC400QOOO 13 -.._ .... - - ....- ... _-. i 1---_... ,.... ~- .. ~.~.- " ._ . - ........." . ---------------.•..---.. 11,1 L. 061967WN 061967WN 061967WN 4,15.S~VE LM OCR ..... 15,1 ....- - - - - - - -........- ... -.. CLC 0(4,14), f 19 BC .-.- 8, BYPASS .-.. - - - - 8AlR --.-.----.- .. 061967WN 061967WN 061967WN • .. _., 06196-(WN ...........-_ .. _ . _ - - ZIZ, 11" . - - - - -..---.-.-.-........-.---.------.---... -.-..--....-.-.-.---.... - ----. --.. 4,0" 0(2,4) ,HOOFO -------. 0,CHK19 . 1, AUF I DC S-------------····· CLC BC 061961WN 061967WN' " ---------.--.-.-.-........" ..-.. - ..---...... - ... - ... - .. ---....- '-'''''''''''' 061967WN -,..-----.-.-.-.-.--.-.~ .... -..-.-.---..... 06 t 96 7WN 0,1 ... ~~ .-.. 06196 7WN .. _ ... _ .. _.. _-_.-.-- . ... ' -" .. ;~ ·OVPASS···· - ~ g: ~: ~~~O' --';:~~~ g~~~:~~~' - - - - - - - - - - - - . - - - - - ....--.------..-----.. - . - - - - - -...... -.-.- '-'--" .... ~:~::~~~ -----. 39 .. .... -..._.- BCR" -- 15,1 . 42 SAVE 43 "-'-'" 4 /t 45 46 41 .. 48 ~~ . DC -: o· . - - - - -•..- - - - ----' - - - . -- •. _.- OS· F SV2 ... OS F HOOFO DC X'OOFO' . . END' g~ ~ ~: ~~~ ..... -.---.------.. . ---.. -....-.... -...-...... -.- - ......... _..._ . --.- --.-_ ........... , 061967WN I ............ - I ·······.. ········_·-·:---·1 ··--.. '-.. -······-······-~-I .- ~ ...: . ~ ... - _._-..•; . ADFloes DC A( IHCFIOSH) 119 . DC -_ ... F' 19' SVl I d" - 06196 7WN - - - - - - - - - - ' g~~ ~C~IIE ) 1 OF' . 06196 7WN--'--:- . ·061967WN . ;~ LEAVE -.--- ~~ -----·!:~~~~A·~~-------·----------·-----·- . z~ ~ g~ ~~o~· .... , ..• - ... - .... '''--"'1 . 06196'/WN ..- - - -..- - . - - . - - - - - - . - - - -......- ... "" ... i~: ~~~ 00005'•. 50)0 OOAC--··--·----····OOOCC-- 31 - - - - . - - -.. S r - - 3 , SV2 -.000058 47FO 8044 OU064 34 OC 15,LEAVE OOOOCO ·ooooee 000000 OOfO ." 061961WN . 06 196 7WN --.--_._-'---- ..- - - - - - . - - - - .- - - ' - ' - - - .- - - - - 20 lR 2,14 OOOCO _ ... 29 ·······--·--·-·L ..--. 1, AOF I OC S30 ~mH mgg~ ~~ ~. . . . . . . ,~h.. " ... _ ... _._ ............:..._. ..... --. F01JAN67· 10/29/67 ~XTRN [HCFIDS~ LR 8,15 ................. - ... 17' . DROP . lU LR 1 q .. -- .-.... - .. - US I NC 20 LR' 21 .-----.--.-. 22 2) .... _--.-. 24 2S' ... EOOO OOA4 00000 000C4 26 CHK19 . B03C· .. -.... OOOSC ---.. 27 .......-----. '00 n06e 01 F 1 ~ 061967WN 061961WN 061961WN *, 904F 1050 ~~;g I ( START 0 ENTRY REREAD EXTRN IHCFCOt·H:·-·---·····-----·--···-·· .-- .... -.-.. - - -..- - - - - - .. ---- .. -. 14 ~CR 15,14 ... - .. --- l'i .--.--- - _ .. -. US INC' 1 00004C OSU1 g~~g~g 0 . ... ...--.-.--.---..•.,_._-- _.-•• ,.. .. , "P ~~~ ;.. , 'I 'USING REREAD,8 061967WN 000 C8 ST 1 , SV 1 .,. ...... . .. 06 1 96 7 WN 00070 B· L 1,ADIII 061967WN ····00074· ...... 9"'--'- ···-··L ·15,ADlfiCOW--------·-.--·---------· _.- 061961WN 0004A 10 MVI 74(lS),X'50' 061967WN 11 EX O,74( 15) . -.....----................. ' ..... - . ._.-.-.................. - .... "'--'-"'-'''' 061967WN ...- .---.- ..•.... 0004A 12 MVI 14(lS),X'58' ,061967WN 0004A 13 L 1, SV1 ....- ...---.--.-----....... - .----.. --.----...... - .. - .... -"""'-'...... --.- - .-._.. 061967WN .".-.------....•......:.. ',-oooca .. 000046 10L( 000040 5810' 8(lAO gg~g.~~ I III 6 7 SOLO 80CO 'l810 8010 S8~0 0074 C)2~0 F04A 440F 004A 92sa F.04A 5810 80CO 07f-[- 0'0002410Ul 000020 00002b 18'tO '000020 OS01 00002E '.7UO 0000 32 ~U 10 000016 904F 000031\ 07fl 00003C bsu'~ 000042 4180 , ... SOURCE STATEMENT ....... . 1. . 2 . 3 ........ . If I \, I 00.0000 , "1 ..-.~..-~ .. •... ... . -----------. --.------.. _._---_ .._---- ..... -....... - .. ---~--.- ........- _... - ..1 I 061967WN' 061967WN '061967W'N 061961WN . 061967WN ..------.--! .--' ..... _·_ . .·----1 .-._. .-.__.·__·_·----:--1 ..... _...- . i ! _ _ _ ....... ___ . _ .. _ _ _ _ •••••• •••••• 4 _ ... t}C lOt I I:' M,W'ittW'ij" ;I'¢'i t tn' ·r"" Mi"M"wtf'tiHH"i!irn:'WitHl 11 '$'1' r· i ·f. I I! ...... o VI . o i I I -_ . "Q' I I .! :i i i I 000 I I I Off' f'";- t· pj -"HrltrttthMtitiff@"rltfil f Pt.ftf .... §tU#"ifitfiii#"· tffff" w r)5¥f-"])TI"j' V" fMwiftfJ"j*["'Ei" I I'll"" jl""lfWf" !IIY..., urn ['rUlIT""wr ,'; t I .i t" fi I .,: ! ... i i I I .,i ;0 I 000 m r \>. o o :;0 n-..l-.l m Ool'-O VI VI. I I I ·1i I ! it I j I I I I I , i ! i ! I i i ! t i ! I ! :~ I ; I ,m .,- I I I I .0 ,> .n II I i I i IiI I ; i I I I i I I i I I I ,I :. I ! I i I I L I I 000 I :-4 :0 ;z C n I -4 I I'I i I I t I ! i i I i i - i I I O' i I I I· I I II ! II ·1 I I i I I I ! I I ! ! i· .I I I I I I I II I I i 1 ! ! i I I I I I i I I j i I I II I i ,i ! i i I Ii I, I !~ I i I i II I I I Ii I I -i i o ..... N ! i I I I' I .() ..... '" -.l 'i r I ! I I i I I i· I I I I :. ! . I I i I i I· < I ! ! I I I I I o I II I I i II I I 1-1i. !I I i ." ·1 >1 C')! ml - I , Ii . I j. I :k14~a -··-·-··~-··-···o···· . CROSS-REFERENCE SYMBOL LEN VALUE ,.. J\OF IOCS 00004 OOOOCO ADtHCOM 00004'000074 ~AOllI "':"00004 000070 BYPASS . OOOO~ 00005C CHK19 00006 D0003C HOOFO 00002 000000 IHCFCOME 00001 000000 IHCFI0SH 00001 000000 i" I 1 CJ 0000 I. 000 a C4 LEAVE 00004 000064 'Rf~EAO 00002 000000 SAVE 00004 000070 SVI 00004 ooooce SV2 00004 OOOOCC ·zz Z.----.· '0000'. 000020 · · . · · . ·0 .---.. . ··----0---·· - - - .OEFN PAGE So , -.-:. -~-. .... -- . 1 - --.-..... ---.... - .. -..... .... .' --.. ---- .. __._-----_.__ ... 0006 0024 0038 0013 0032 .- 0035' 0036 0040 .. _- ..... "'--"'-' .... _- .' -- -- .-........ ---_._--_.- ,_ __ .. ._" ----- ... ----- '-' . -- ...- _ ~] I ====1 .. .'- ..... - ...................-.- ..•--._--- ...............- '''-1 --. • 1 --.~.- ..--..--- .............._.[ ---_._---_. ..I.-'-~ . ---... -.---.. --- ....-.-.-...--------....._.....-- . . -. -..................... ........-........., . -·_·.:....._·_ . ·..·..··_·1 . ,I ----_..--_.... -.- .. - ....-. __ ... --- .... -.-... _.- ......... ---_ ...-.- .... -- ................._....... -- ---- ...-----_._-_.. _----,--- ! NO STATEMENTS FLAGGED IN THIS ASSEMBLY 82 PRINlED LINES I ....... :~. 1 ..... -." -.. - ..- ...... -_ .. .... --.. -_. 0029 .... ~ ..... -: ......... ~ - 10/29/67 REFERENCES' 0023 00".3 0041 0009 0040 .... 0008· 003') 0027 0026' 0022 0021 00'.7 0041 0003 0004 0043 00/t4 .... 0026 0037 0034 0005 0002 0016 00't2 0045' 0007 . 004~ 0033 0016--- 0019 . .. .• ___ .•..4._. ___._ _.___ j--.- .. _--_ ... ~_J ·.. ·1 I ---.---- ... ---- --.---.• r"- ~.-.-- ...... -- ... ----- .__ ......... -... - I !I f-----.~.-.--.~- .. .. -" ....-.. ---- ... --.-.. - .......-._ .. -.. . -.-.------- ------.---------.------. -- ~............. ..- .. - --_. ---------------_.-. -'-'. __ .- ------_ .. _---------------'-..:- ..- . -_ ··· .. ·· .. ·-1 _________.._____. _____ .____.....___._ ..____.___.__.J -.. ------.---.. ---.-.---------~-------------------------. I ·_·_· _· . ._·····__·····---1 ~._-- ... I -----------------_... _.... _-_.----------_._---_. __ .. __ ... -_ .. _._--_ ......... -- .......... .. _._--_._--_._-----_._--.......... _.......... -.. -._ ..... ...-.- . "" II -----"-- ... -,,--- '-'''-'-''--''--'. __ ... "-'1 ..- --_.--_._-_ _-.... .. ------....__ .. ----- - ... ----_ ....... ... __. .. .. _...... ""'.- ... - ........... . ..---..... _-_ ....---_._-_... ------- ---_ ..... _--_ -------_..---•... _... •.._-_.. _- -_._--_.._.. --_._._-----------_._---__ .._---- _ __ __ __ ----- --..... _.....- _.. -.. -.- ... - .... _ ....-_ .._.... I ...... - ..... -. ---_.------. ; ~----. ... _ .. .-.~- ...... , .... .... . . ..... ... ~.--.-- '--.-.--~-"'-'-' ~.,--- ....... .. --.--.----.... - - _ . _ .... _ - - - - - - - - - - . - - - - - - - _ .. - . - - - _ . . . . -.-------.-- ... ~.----. - ........ --------.-~ _ . _ - ...... - .. - ... ----....--~ _ _ _ . _ . . . . .I ... - __ ._-_. ..---.. - - - -..... -p.---.-.. --- ....__ ._. __.... __._. . ._-_ ....__ .__..... _ .... _...................-._---•._._---------------_.- .. _._-_._-_ . ._.-.__.----_._----_._--_. _--_. __ .-............ -. . .. - '-f •• _ _ _ _ _ _ _ • _ _ _ . _ _ • _ _ '--"---'-- -----_ .. ~ _ _ _ _ •• _ . _ _ _ _ _ _ . _ •• _ . _ .. ~_ •.• _ . . . . _ ........ _ ••. a . _ _ _ _ _ . • • _ _ . 4 .. _ _ _ _ _ _ _ ~ • •_ • • • , •• _ _ ., • . _ ... _ . _ _ •• _ _ . . . . . _ ~ .' .-...- ..-~-~ ------_. _---_.._------------------_._._..- -----.-.... --- _--_. . --.-~~ SV$l.MACLfB . KEPT ......-... -.--. ... SER NOS.:·-·OOOO 17.-- ------... ----------------.----.. - -.-.. -lEF2tl5I AAAAAAAA.AAAAAAAA.AAAAAAAA.AAAAAAAA.00000042 PASSED .. _-_... .......-.. --- I(F28S1 - VOL 5ER NOS= 000017. ' - .-.-------'--------. I(F28~r AAAAAAAA.AAAAAAAA.AAAAAAAA.AAAAAAAA.00000043 DELETED It:F28~I VOL SrR t~OS:: 000011. ..-. - ---------IFF28~I AAAAAAAA.AAAAAAAA.AAAAA~AA.AAAAAAAA.00000044 DELETED --'r EF2 US r-·-·· VOL Sf R NO S: 000011. . - - - - - - . - - - - - - - - - - - . - - - - . -... IEF2851 SVSOUT SYSOUT IfF285I VOL· SER NUS: IEF2B5I LOA05ET.REREAO PASSED IEF285I VOL SER NOS~· 000011. IILKED EXEC PGM=IFWL,PARM=(MAP,LFT,NCAL,OC),CONO=(5,LT,COMP) 00000090 .• 00000.100· -'I'SVSLIN" DO DSNM1F.=&LOAOSET,DIS.,=(OLO,OELETE),UNIT=0ISK 00000110 II 00 OONAME=SYSIN 0000012 a.-------------------- --.- ---- - .IISVSUTl 00 ·OSNAMr.::*.COMP.SYSUT1,DISP;(OLD,OELETE) IILKED.SY5LMUD 00 DSNAM[=SYS1.FORTLI8(REREAO),OISP=OLO ... I IS YSLMOO DO CSNAME=T E5 T. LOM)' 0 r SP=OLO .. -.. - .---.--00000130 --.---..--..-------.-..---.----.------ ... -.. -..-.- ...-....-.. -_ .... -......- ...- -......--... -,.-115YSVRINT DO SYSQUT=A 00000149 - - _ . - -II ... -..... .... - ..-- ... - -....-.-----.tEF285t -ft:~28S I ---;-··VOL ~--- ---_._---_ ----------------- _._-_._-_._-_._------- IEF2361 tfF2371 'lEF237t I(F237t ALLOC. FOR REREAD ON 191 SY $ U T 1 ON 1() 0 SYSLMOO ON 192 STEP1 LKED SYSLIN -_ .. _-------------------------_._-..... _-_............... --._ .. ~-.- ._....___.___ .. _. ___ .___ . _____ . ________________________ ._ .... _---_._0.._-_._-----_._-----_. . _-_._--_.-_._---- .... _-------------------------_.. _--_._--.-._--_._-_.- --- ------_. _--- . .----------..----. ---- -- - .._-- ... __.. _----_._-----_. ------ - -- - . .. ._----_.... _ - _ . _ - - - 1 ._._--_. ------------.----:--.........--.. .. .-...,.-.....;.-~.-----.-.-- o ... ~.-.- ... _._ ....•. --.-.... --. . ... '-.-""-' ......... _ .. _._ ..... ------_ .....__ ......._-._-_ -._._----------------_._-----_._--.. __._--- o .. -..... _... _- .....•. _ -. .... ._---_._----------_.-.._---_._---_.._._- ..._-- _.- ....... --- ...-....... _..- ... '- ... __.__ ..... _..-_._........._-- ........ --.- ..-.... ........ _-------- ------_.-... -~ "., _._-- _..... _~ - --...,..... . - '. o ~ ..- ---_ .._- ...._-_ .. . .-.. '. : o E-LfVEL LINKAGE EDITOR OPTIONS SPECIFIED MAP.LET.NCAL.DC tr:W0461' IHCFCOMF ._.-_ ........ . IEW0461 IHCFIOSH )***REREAO ODES NOT EXIST BUT HAS BEEN ADDEO TO DATA SET ·0··· -- _----.--- _ - --_ .. .... -... .... ... ~ . ...... --.---.---:--~.-.- - ._.... _-_._--....... ..... , .... ........ '-'._-'."" " "" DIAGNOSTIC MESSAGE DIRECTORY - ---- "'-" __ __ . ,- - ......- --.-......•. __.. .... ., ... -... ~.--.- ...., "-'~'--'~i ~ ~'~r .. '-~- ....... - ... .-.-----.--' ----:. -.•.~ .. '--·---1 _ .. _ ...... _.... ..... -. . ...... ..... -................... ,. _._--_•._---- _____.____ . _.-... _. __.___ . . _. . ._. . . . . ____ . ----1 IEW0461 WARNING - SYMBOL PRINTED IS AN UNRESOLVED EXTEKNAl REFERENCE. NCAl WAS SPECIFIED. '--"-'''--'--'--'--' ... -' .......... -..... - ..... -.. . .... --.- .. - ... .- .. ---.,. ... ····· ..·.. ·..-1 _._._----_.- _............ _.. _ .... _.. _... _........... . MODULE MAP "CONfROl SECTION NAME -.-~ ORIGIN .- ENTRY --..-.----....--- .- "-'~"'- -- .-......._-._..__ .. _...... _.. -.-- .. ., ....... ---. - - ... _ _---_.. __ - - .---. -...... .. - .. _... __ .._.. . ... NAME' "" ·lOCATION ,,---.. NAME '"'-'LOCATION-''''' NAME'''' LOCATION .. ·..--·NAME .. --LOCATION-.-· ..·--·--·--·---- lENGTH . • PR I VAT E ..... - ·· ..··.. ·00-·· ....... :. 02 ---.-.-- ·-·--·---~·~R·E·~·~---· .-. J:NfRY ADDRESS TOTAL LENCTH ...... --J .--.-----. - ...l I 00 .... , I ._-_._._----_.- _._...-----_.._. --~-~. . 02 • , --..-_._------------_ .. - .,,------.----- . -.. -..-... -.... .. . . --.. -----.---..--.-.. . '-' ··--·-1 -_._-_._--_. ---.-... ... _.--..._ .. -- ....-._ .. .:._---_.. _------ .. :_._------------_. ---_._----_._ ... _...... _-_._--.-_ . _- ... ---------_... _--' _..... _----_. __ ._- _...•. _-_._---------------_. __ .- .. _-_ ..__ __.....-._-------. i I -.- .- "-- --------------------_. -_. _--_._------ -"---------! . -..-.--..- . .-.- -.. - ... ......... . . ·l I -.------------~--.~--~ ..~ ~·· _------_._---_ ---- _.-_.... _. -- _-_.._-- _ _--_._-_. _.. -_ ... _._- _.._... - -.-'- ---·----1 ! ---.--.--...---.- ....-.---.... --_.. _---_ ..._---------_. I" .... .. . .... .. "--------~ ." . --.----.-----~--- ______. ___.______! i - .. -------_._- _....... __ ... _._._----- _ ... __._-----_ ... ----.- ----- .... __ .. -'- ... .. ... -.... -- . . ... -.... . .. ........ ' """ ..... -... -.~ - .. - - - -... -- .. --.. -- ....... - ._ ..... -_ .. _ ....... _ _._ .. - '-"·---"'1 ----------_ ... _-----_ ... _-_._;-.---------------_._---_ _-_ _----------_.------_.......... - -_.- - ....... __ --_. ..... ...... -_._.-.- _... _. -'- ... -_._------- .-- ---------_._-_._-_. -------_ .... - .._. -~- .. ... _-_ ..._---- ... .-.--------.-~----. ._----_.. - ._.-.-._--_._ .. _----- ---. --------_._-••.._---------_.... - - .... ---.--.---.. ..----..-------.. " ...... .. ... -:- _._ .. _------ __ ... --'----~_.--- -- ...-.-.... -- .. - .. -- .. ... .-...-..... -~ I ~- .. - --~ --------------------- -----~ .._. __ .. -----_ .. _.. _.. - .' .. ~ . i .-.- . -.. -.' .-.- ·······--·--··i : ... ;..-. ···· . ·. i -- ..... _.-" ...... -.- --". --- -_ ... - .... - - .---~--.-----.- ----- .... -----.--.-------... _.. _-_._----_._--_ .. _-_._-------_. lOACSET.REREAO IEF285I . I f'F 2 .. _____...... ' as r ....- vnL IEF2A51 IEF285t I EF 2 8 S I If7F28')1 -IEF28sr--' VGl.. SER NOS: 000017. SYS1.FOIHLIO V() L S Ef{ NOS = 00000 'j • SYSC(Jf 'VOL SER NOS:' __ - C'- ----.- --.--~.~---.--.~:-. - ~.-'._--_._---.... ... DELE TEO -~-- -.. -.- . S ERN 0 S=' 0000 1 1. AAAAhAAA.AAAAAAAA.AAAAAAAA.AAAAAAAA.00000042 DELETED I~F2851 -~ -------_. __ _-_._ .. _.._-----_. __ .- -.. -.-.------ .. -----. • -~- KEPT -- sy sou r . _. ___ .._____..____ . _____ -'-'-'- .--_.-. ---.-.-------------.. ---- --.---_. - --------- ..... --.-- --.. ---.-. - .. ~------ ---- .... - ----.-. --_.- .-- .-...._- ... -----_ .....-- _--- ------ --.--.--------------------------------- . _.- . __._._---_.---------_. . ----_ .•_----------_.-----_._.. - _. -----------------.. ------_._-_. ----_... -- ... -.- -------------------------------------------~------- _-_ -:----------. •. .--.- -..__ ........_-- ..--------_._---_._---------------_. - ... __._-----------------_._--_.__ _._----_ ..._- ._._ .• .. _-._- ------------------_... -_ ......... __._--- _-------.. --.. --- ---- ... _._-----------_._.. _'-'-_.'----- ...._--- ._-- _..._- - .. --.............. :.-.. -... ....... . . -------~- - -- -........ _._---,..- ........... _..... __ . - -...... -.. ---.-. _.-.._-_ . . . . . ------.-1 - --. _.. -...---. _. __ ... __.. _--_._ ... --- .. ----- ....... -... - _.. -...._._- .-... --_.... ----- ._--------_.- o . - . __ ... ______ .. _ . _ _ .. _ . _ _ .-.-. . . . . - - . - _ .. _ . _ . __ , --'0 •• _ ............... _. __ ··'0 o· -·c· ----~.-~-.~~~ ~~~. -.'~:: ------.. . -.-----.. --'. ----.----... . "1-. .. ---~-~ o· '/~Rf.REAO Os MSGLEVEL=l IISTEPt EXEC FORTECLG'-'- IICOMP EXEC PGM=IEJFAAAO IISYSPRtNT"f)D SYSOUT=A IISYSUT1 00 PNIT=01SK,SPACE=(1024,(200,lO»,DISP=(NEW,PASS) IISYSUT2 00 UNIT=OrSK,SPACF=(fRK,(30,10» IISYSLIN 00 OSNAME=&LUAO,DISP=(MOO,PASS),UNIT=OISK,SPACE=(TRK.(30.10» -1 I COM P• S VS t N DOD AT A ... -_.... ... tEF2361 ALLoe. FOR lREREAD COMP STEPl IEF237t SYSUTl ON 190 tEF231I SVSUT2 ON 192 IEF231I SY5LIN UN l~l lEF2371 SYSIN ON OOC 00000010 00000020 00000030 00000040 00000050 . .. ... .•.....•.••...• _co...••. __ .. . .. .... ....... . .. •.•... _ ...... '. __ ........1 I . I . ""1 f _ _ _ •••• _ _ _ _ _ _ . . . _~ _ _ . . . . P _ _ .. w _ _ _ • _ _ _ _ ~ .. _ . . , -.. ~.~-:~~__--. _ .~_.~~~ . ~ : . . . . . .J . . _. ._~. ___.____.___.___.____._.~_. _______-_J j .. - -- ..~ I -"--'--1 . . tEJOOII COMPILER OPTIONS IN EfFECT: SOURCE,MAP,LOAO.AOJUST,PRfRM,SlZE=45056,LINELNG=132 "4' ••••• _ • . _ _ _ . _• • _ ... ~_ _ _ ._~. _. ____ ... _ P . . . _ _ ........._ _ . _ . _ ...._ I --1 •• _ _ _ . _ _ _ _ _ _ _ _ .... _ _ _ ._ _ _ , _ _ _ , i ! - ..- - - - - - - - - - - - -... --.-.-... --.- ....--.---.--.--.--.---.----.-.... -- - ..------...... ------.-. ---·----..- - - - · -.. ·-·-·1 --- _._---. - ----..... - ...---_.. __._ .. - .' ------_ ...---. -- -- .---.. . '. I _... _......... .... _ ..- ... --" ) . - - -..-------..-.--~ '. - "" . - .. - ....1 ' 1 ........... ~---.------.-.- -----.- _.-...._._ _...._.. _--------.- .... ---_._----------_._----------_. .. ._-_._._-------_._._--._. --'-'---"--'--" ..... "'-' .... _.. __ .. - ........ . ... .. - .. -.-.- ... , i .. _---: -~----------! .... '-"'- __ -----.------~ .. . ..- ...... -.-- _._--------------------------------------. -_..._ _._---.- .......__.__._----_.._----------- .... -.-- .. - .. . ,." ------------------ . -~.- .... , .... .... __ __ ._- ---- .. ~ , ._------------_._ ...- - --------_._.. _---._---_. -----_..... _-_._- ...... -- . . . _.. _.'-"- .. -.... 1 -."'-~-- ..- _... _. __ . -----_ .......... ---_ ... --- _........ _ ... ---------_._--_. __._---_. 1 .- - _...... __.-... --_._-------_... -.----- -.. -- ." .- .... _.... ..... . ----- ..... -------------~ i _______.______. '" ___________________. ______ ..-_0_--... ·_- __ ...... _. . . _.... .. -_...... ~ .-----..---.. ,------------~---- ---"7.-~- - .....-.. --:----.....-. .•... -'-"--' ... _.. ... ---_._--_._. - -.--~ ......... - --~ .... -~-- .. -- .•.. _. __ ._--- -_ . --- -. -_. - - ..- ....... - ...... . _ • • • o_ . . . . . .!_ i ,:".~ .•. ____ J 'i . I __ __ ...._--------------_._-----..- _---_..-----------------------_._----_._-----------{ . .. .. o o o --........... ,... ~- . -""'' ' .-. . --.. . .-.. _. . . . _.-_. -.. . -.-- .. __ _ -----.---.. ··O·.~ . ,.~ -.- ........ ~' .-.------~J--- ... - ................_....... •. .. .. -- . ----.. ----.-::-~-- . .--.. S.0002 CALL ~. OOO'~ .. ~EAO $.0004 .-~. REREAD (5,1) A ....... -.......... -.----.... -.---.--- S.ooon 061961WN ...... -------..- - - 061967~N FOR~AT ·(3F6.2,I4) R F. .\ 0 (19 t 1 0) X , y , Z ,J . .. --.-----. - - _ .._ 1)0 5 1=1,10 5 WI{ 1 T E (b t 7) X , Y , l ,'J .-.. 1 FORt-1AT (' ',3F12.2,II0) S T UP ..... ----------.-. 10 S.0009. 5.0010 S. 0·0 11 5.0012 5.0013 5.0014 061961WN ----_._------_. - ....... -- 061967WN REL A ADR 0001BO ....... NAME REL AOR REREAD 000168 c=:~_Q~_':t_~!!.,_~:..~.~U} VAL~NCE _ _ _ -._-_. REL ADR NAME .. TAG ... ... _.. - .. _.... _-----_._--. NAM E" •.--.... _. REL . - - - - - - - - ----............-.-..-.-... --'---.. -----•.•.- . ----------------. ' REl ADR NAME TAG ......- ---I REL ADR y , ........ :..-- .-- .. _:o-__..-_ .. ~ __ J OOO~Ae NAME----.---. ~_. :E-l-·~::------~--~~~.~.--"-= ...... -.- .., ....-.------.----............. --..............- - - - - -.... -----.. -- ADR' _------,------ i EX:::N: ~:ReF ::::te-s~~~~A~·R- ......... - ....-......---------------- ... CONSTA·N'rS""·· ~'MME . .. ) 0001A4 X OOOlA8 .... _... -.- ... --_.-.---. -.. 000164 ...- - . --.-------.------.--- ... I J 000154 'l TAG NAME "'I. 061961WN .------. 06l961WN ---.------.. ------.. - ... END TAG Loac' 061961WN S TORAC.~___~.A~ _ _ _V!,~. I A8Le.s_~.!_~~.~.~. NM~E ..." -------.-.----.--.-.--'.~- '-~06l961WN-'---' 00 ] 1=1,10 3 WIUTt: (6,~) A "S.0007 .. _ . - - - . . 061967WN t FORNAT (20A4) S.0006 .------- 06l967WN ·----:---·061967WN·- 2 FORMAT (. ',20A4) 0005 ...-------. -" "-'-"---'--.--DATE': 61.302 061967WN MENS ION A (20 ) ...--...---.----.--......-.-----.-...; . - - - - .- - - - - - - - - - 06196 7WN- or '''·s.ooor· . .----..-.-_. --' ........ 0.' ,..... ---.---.-... _ ----- ------- ......-.- _l:.~_V..~.~.!"'}.J.U~.66.~ .. ___ ._.. __ ...._...,..._.. __ .. ___.____!.~.~ ...Q~!~.6.~_.~.~S.. ~.~~q~!.~~~~V~~~~~.~!_I..~~!}.~.~ ,_ __ C 061961 -~-~-~ .................. -....,_ ......... _......-. :--·-1 .--..-----: .... --.-r--:--·------~r ..- - - - - NAME·---·--···------ RECADR-NAMC-----;--· "-REl ADR··. NAME'-- .-.- ................. -.. REL AOR ···~ .. -:--:I . ..... -...... --. "..--.-.-_._-.-."' ........... ---.-- ..... -:. ... --....... -......... _. . ., .............-......": ..·. :-1 ... _-------_ ..IMPLIED - . . ... ..EXTERNAL .. ......... REFERENCES -- ._ .. -.. _.. _. __._--, .----------.-- .....---•.-.. -'------~ -. ..- ----_ .•-- ........... - ,--.-~.. ..... . .. NAME REL IOCOMN OOOlFC STATEMENT NUMBER ,~.. ~ 00'002 00005 REL , ----...,....-~- AOR ADR NAME REL AOR NAME REL ADR .- STATEMENT oootce 00001 0002B8 00007 SIZE OF COMMON NU~BER PROGRAM OF CaMP I LA T I ON .. _., ...... 00003 000248 ._ ....... _._._ .. ~ .• _._. _._ ...._..._._-_ .. _. __ ... STATEMENT . __ .. .. - ... _.. NUMBER· .•.. - .... .-- _.-._ __ --STATEMENT _.---_NUM6ER .. -- ..... _...... _- REL.. __ .. ADR .. AOR .. 000104 000lE8 000000 END REL NAME REL ADR ._ .................... _ •.. ·.M ..... :_ .. ... , , _-_ 00010 _-_..REL ADR ...... . ...._... -....... OOOloe ..- ---., .. 000182 MA I N·----..·---·----..--·--·-·-----··--·-..·-------·-· • ...... . ..... ...... ........ . - ---.-...-. -- .... ... --.~.,.- ......... - _..... ----...• . .. ~ ........ ·7 - .......~~.:-. > . . '. . . '" ,,_w'.-"'; ... , '::1' .._._-_.-.._._.-.--_. __. - .... _............. _.-:-,.--:---:- -.--.-. -~! "1 . :mm· m:n~ ~~!~~ ;~~ A A. AAAM M A. A 4 A A AAA A. 00000049 ::::~: -"- •... -~-" .. ~ .... ..•. _.. ~ _.. _-----. _....•... - .. _--"-.--- _.-.-._._.,_..- ... -, ........__ .. '.0._ .. - ---.. ~.-- __......_-_._----_..--.-- -- .......-.... ...... -~ ·_--tl -R) -"---'••- - " - - - ' - - - - ........ - ... -.... " ., ...- I(F285I' VOL SF.R NOS; 000017. "J - . . . - .... - " - - - ' . . . . . . --... - ......... _.- ..... - .. -._.-.... ..... . . . . . . .IEF28S1 hAAAAAAA.AAAAAAAA.AAAAAAAA.AAAAAAAA.00000050 DELETED IEF28SI VOL SER NOS= OOOOO~. lCF2USI LOAO~r~EREAO PASSED IfF285I VOL S~R NOS= 000011. IILKED ExrC PGM=IEWLtPARM~(MAP~lET,ltST,DC),COND=(5.lT,COMP) 00000060 - _..... --. ----_ .._----- ... - ... _IISYSLtA 00 OSNAM(=$YS1.FORTLIB.DISP=OLD .. 00000070 .. - ..... _. IISYSUT1 00 OSNAME=*.COMP.SYSUTl,OISP=(OLO,DELETE) 00000080 IISYSPRINT 00 SYSOUT=A 00000090 IISVSLIN 00 DSNAME=&LOAC,OISP=(OLO,OELETE) 00000100 II L> 0 0 r. N AM f = S V SIN - ...._-. --. - - - - - 00000110 ...----------.-----. IISYSLMOO 00 OSNAM~=&GO(MAtN),OISP=(NEW,PASS),UNIT=OISK. XOOOOOl20 - .. -..... _.. _..- -.-- --..... _... - ... ----. _. __.._-" .. _- ......-. -.. .. ---....----- ....... - .. II SPACE=(}072,(20,10,1» 00000130 IEF2361 ALLOC. FOR TR[REAO LKED STEPl _._._---_.- ..__._--_._--- ..._.. _-_.-. .... - ..._. ._------- -.. I[F2311.SYSLIH ON 192 I~F231f SYSUT1 UN 190 .. - ..... -- - --.---.. IFF2371 SYSLIN ON 191 IfF2311 SYSLMOD ON 190 ---_.... _..... __ __ .__ ._ ..... -"'-' ~ ----.-.------~----- .... - ......... ---. '-T' . ~--.-----.---.-.----- ---- -.--- --... -_. -_._ ...... --_......... --..-." -. _...... __.----.. ---.. __---_ _- "-"--"- -...... .-._, _-_. .~.-.- ~.~~ ... __ .. _-_._------- -. -.--------.------ . .-------.-------------------------------------~--- .. ~- .. - _ .. ------_._--_ .._.• _ _-,._------ .. .. ~-.-- __ __ . "- .._------- _.. ---------._---_._--_. _-----------',-----------------------------------------------._-_._..-_.--_. ._._ .. __ .;:-- _-_ _--.-_. ...._-- -............. . _.. -. --.. ---.. ---------------..-- .. ...... ~-... -.-.~ --..---- -.------r--------._'-'.-.--" _._.- . ---.-._-_.:._._-_._-------. - .. . "-'- .. -.--.--- ........--... --- .. _.. _.. _.__._- _._ _--_.-._ .. .... .. _---_. ._-------_..__ .._----_._--_._--------_._._.. _._ ..... _---._... _---.............. _._._-_ .._-_._. - .....--------------.-..-----. ---.-------~-~-- ........ -.------.~-- .. - ..-........ ------.-- - ...--........ -.. .. -.. -................ _....... . -- - ~ - .. -.- ...... .... - _._ ..... _- ----------------.--~-----------.----- _ _. _ . _ .... _ . _ _ • _ _ _ _ _ • _ _ _ _ _ _ _ _ _ • _ _ _ ..... _ •• _ . _ _ _ _ • •• _ _ . . . . . . . . . _ ••• R .. _ _ _ _ _ . . . . . . . . . . . . . . . . . . . . -_._-_. __....._........... ---_._----------_ ... _._-_._._---_ ........_--_ ... _._--_... __ .... _.. _._._------_ .. __ .. _- -'-.·.-·~O-··-·--· . --.-:-. .-.---.. . . . -.. . ----- . ~-. .----.-..-.. . - - . .-..- . . . .----.---"-.- - . -.-----~ ------:--.-._--.. ---_. . --.. . . --------_.-..---..--O-··-.-·-..· -. ~ ..:~·~·-··-· i ,... ~..., 0 . -.--.--~:--.... . - --.. . . . . -.--..--- --.---- . ....... '" -.. ------::------------------------. -0 . . . --' . ..:~~ 0 _ _-_ _--------- .-~ ......... -.. " '.......__ .__ .- ..•._._ ..... __ ._ .. ... ....•.. ..------:--~--.-.-. -----.~ ..•. .. , E-LEVEL LINKAGE ·EDITOR OPTIONS SPECIFIED MAP,LET,LIST,DC -.-*.·*MA(N .. _....... - DOES NOT EXIST BUT'HAS BEEN 'AODED 'TO DATA" SET-.... _._ ...._...... __ .- ........... , ~ . -------_._-_ __ .... . ..... --.. - .... _........ _--.. - ...... -. - ....-.. ORIGIN tlfd N . .. _--- ... - .. --- -. --- ... .. .. ... . _ _._-_.- ._._.,- ... ----.- •..• ..... ENTRY ADDRESS TOTAL LENGTH '. '. _--_.._-_ __.-._. __ - _-...- _----.. ' ..... ... . .... MODULE-MAP -- .... _.. _--_ .... _... _........ ._------_ _-----_.,---- - .. LENGTH 00 NAME 'LOCATION . NAME NAME LOCATION LOCATION NAME LOCATION lOE 02 - .-.-.--.---....,...----. -.. --.... - - -.. ----.--.... lE8 ..... -..-14.64...... -.. -...-.-----.-R~REAO ._-----_310 .. - . --'-~ IBCOMI# lEa FDIOCSfI CF2" - .. -----... --.-.--.-.. -....- ...--.. ._ _ _ _ _ .FIOCS# .1a~O____ -IHCUATlH':*--'-'~-2548 ----... 138 IHCFIOSH* _.. __ ' _ _. _ ENTRY ....-._-. --_._... _._ .... -$·PRIVATe·-.···- '310 IHCFCOME* " _._ _-----_ _ __ -- CONTROL SECTION NAME --.- .. . , . 9F4 --------_. -------_. --.. - 1850 -_ .........., ........ - .... - - -- ..... - -_ .•.__.... - ._._--' ---_..._--_._-.--.--...--- ____. ______ 00 2660 . -. _ .... '"'' _._---- ._- ......... -.... _--------------------_. ~-----.-'-- .... -... ---.- .. -.- ..-.--.-.-~=~~-.---------------_._--_._---------_._----------------_. __ ._------ .~=-~~-~:~--.~-=--~~ .-- .. - ..... - .. _---._--- ... - ...-._------_... _----_._-----_ ... _-_._-. __...._--_. '-'''-'''.' ---.~-.--------.- •..--...-... --- -- ... -- .. ,. -_.- '--' ------------_._------_._--_._... ----~-- .. -.------ ... - ... _.... -~ .....- -. ------_ ... _-_ _ .. .. _ ..- .... "---',-- -_ .. _-- _._ .._._---_ .... __ ._-_.. _.... - _._-_. __ _-_.- . .. ~.- - ........ -............. ........... -----------------------.-~.---- _... ----_ ..... --. --- ---- --. '--- "-'--. _ .. ---- .. _0_ ... -_.'.- ...... '- ,........... -.....- -- .............. "-" ............ -_ ... __ '_'1 'I l...:-_ _ _._._._._ ...... _......__ .... __ .. ___ .... -.' .... _.... _ .. - .......,----__ .• ______ .. _. ___ .. _.. ____ .___ . ______________ .____ .. _ .. _______ ._ _ _ _ _ .____________. .. -- ...--- -- ------. -.-. - .. ~--- --------.. ----..--·------iI - -. --.-. · - 1 . .- .... - . .. . . . . . . . . . - -. . . . . . - . - - • • - - . . - - . . . - .. - . - . - - ..- - . - . - • • - - - - - - - - - . . . . . . . ---~ . . . - -. . - . - - . - • • - .. - - - - - . . -.-.---.-.------.-~ . . - - - . - . - _ _ • • 4 . . . . _ _ _ . "'1, ---1 ~--:-- _ _- - _ - . _ ...... • - • • __ - _______________ • _ _ _ _ _ _ _ _ .0 _ _ _ . _ ......... _ _ _" .... - ........ -~... •• _ i--~.- -.. IEF28ST SYS1.FORTLfB SF.R NOS=·000005. KEPT AAAAAAAA.AAAA~AAA.AAA~AAAA.AAAAAAAA.00000049 DELETED -----------------_.- -- TEF28~r-""VOL I~F2851 IF.F205I·· IfF285I IEF285I IfF285I t EF2 0 r -. . IEF2051 'VOL SFR NOS= 000011. [tF2851 VOL SER NOS= 000011. ~ ~, SYSUUT VOL SFR NOS: SYSOUT LOAO.TRf~EAD DELETED GO.TRE~EAo PASSED VOL S f R NOS = 000 a1 1 .' . . . -......-.. -- .. -... ".-- -. ... ..--- I/GO EXEC PGM=*.LKEO.SYSLMOD,COND='(5,LT,COMP),(5,LT,LKED» IIFT01F001 00 OONAME=SYSIN /IFT02FOOl DO lJNIT=PllNCH //FT03F001 DO SYSOUT=A IIGO~~T06FOOl DO SYSOUT=A IIGC.FTP)FOOl DO OllHMY /IGO.FT05f001 DO DArA STEP 1 I(F236I ALLOC. FOR TREREAD GO IEr-2311 ~G~=*.OC ON 190 - .. ---..-- - ._......... -.-. --_._. 'TFF2371 FT02F001 ON QUA tEF2371 F10~FCOl ON OUC ••• _•• __ ._ •• ____ -"_. _ . __ .. ______ .• _ . _ ... _..... _ •. _ ••. _~ _... ----_._-_._--- ....... 00000140 00000150 00000160 -'·00000170 ...... ----.---.----.-- __._------_._- ..... - .. - - --- . - \~} .:... -- ---~--~~-- .... _ • ___ "_JO _._ ..- ...... - .. __ .._.. __ ._.- ... -_._. _.-_._--_._------_ ..... - ... --- .-- .-.--'. -~ .. ..... --.. ~ ---_._-- --------------_. 123~5670912345678q123~5618912345670912345678912345678912345618912345610912345678 .__#_-._--- _.- ---.---- .......- _. _...... -- . -. 123456709123456789123456789123456789123456 789123456 789123456 7 89123456 '/89123456 78 -. --.-.---- -...-.-ll34567891234S67891l34567U91234561891234567891234567891234567891234567091234567H 1 2 J 4 5 b 7 fI 9 1 2 34 '> & ., 0 9 1 2 34 5 67 Po <} 1 2 34 56 109 1 2 "34 56789 1 2 "345 67 8 9 1 2 34 5 6 7 891 2 "34 5 6789 1 2 34 5618 .-.----- .~ 1214561891234567091234567091234567891234567891234~678912345678912345670912345678 123~5&78912345678912345670912J45b789123456709123456789l2345678912345618912345678 1l14567091234S6781123456789123456189l23456789L234567891234567~912345678912345618 12 .~ 4 5 &.18 9 1 2 j 4 56789 12. 3 It 'j 618 9 1 2 j 4 5 6 7 U<} 123456 709 12 3456 7 8 q 1 234') 6 7 09 1 2 34') 6 ., 0 912 3 4 5 6 7 U --.- . _ - - ----.---.-12145670<}1?34567U912345610q1234567891234567891~345678912345678912345678912345678 12345670912345670912345670912j45676912345678912345618912345618912345618912345618 1234.~6 7091.l3 4561.89 1234 1234.56 7891.23 4567.89 1234 1234.56 7SQ1.23 4567.09 1234 1234.56 7891.23 4567.89 1234 1234.56 7091.23 4567.89 1234 ----·1234.56· .,. 7091.23 4561.09 1234 -.------------------------.-1234.56 78~1.23 4567.89 1234 1234.56 7H9l~2'3 4561.89 1234 .- ...... --- . ..------.------.----.-.--.........- ... -- ...--1234.56 7891.23 4567.89 1234 1234.56 1891.23 4561.09-' 1234 ...... -.-- .. -.----.--~-- ---._---_ .. _._-_._--_...._--_._._ .... -, ....- .. .... _ -".' --'. .0.-- .- . . . -----.-.-.-. . -. _... _..-.- _ ....... ...... - ...... -. _......... _....... _ ...... --- -... - _. __ .._-----_._-_._---------_. ._- ---' -------_ _--- -----------._- _-_._---- ...--.......... _. . ... _---- .._-------_ _-_._- -_ _._--_._ _---_. --. -_._------------ _...... __ .._--_.----------------.----------_.- -.... _--_ ... _. __ ._-_ _._---_. -'--' - _. __.. _. -. -.---- ..---- _. __ __ .. _-_. ___ __. _-_.-_._............ ...-.. . ........ . ..... -".- . -.... .. _..... .. ..... -~.--- .... ... - ............. .. ... ...... ,-- •... . _- -- _._---_._._--_._----_.- .---. ... ...... ._-------_.............. - ... -- --- .- .. -- .. ---.----- ---. ---------- .... - . .... .. . ~ ...... --._-. -··0-----·---·-··· .--:----:----.-. ---._----------.---.----...-0------ .'-.:-. -~--.-'-- -•.. ~TOC'OJEC'f~!oOe-~~lj:_ri~R~io()ti1>~s rtlK1~'f}js ~~ -~·OOOOOO . 1 REREAD START 0 ·2 ENTRY REREAD ..... _.-, ..... 3 '--"~~''-'- EXTRN I JTAeOM .. ----·-··54 -_.-. __ .............. .: EXTRN US I NG IJTflOS *. 1 ') 000000 5800 F060 00060 000004·',5810". F06't . - - - - - -...--..- 00064---·· 000008 5000 1816 . . 00818· -oooooe O'lFE:' ......... - ...... :............ ' ....... . ." ... _.. l8Ul 6 7 ......... _...... 8 9' 12 13 onOOOE . ... - 000016 0503 4060 8082 OOOOO'OOOCO O,AOlZZ ST O,~%o.la 14 15 L , ... _- .. _ .... LM ~-- 24 .. 5030'-'S'OAE 00004U 47FO U04() 00004C, 5820 UOAA . . -. -_.......... _... 00008 OOOBe . 00054 OOOBS ' 000064 00000000 "DC' 37 AOIBCOM DC .. DC 41 SV 1 .....~.:- ................... ~- ....- .............. " . ,,-, 42' SV2 . . OOOOCO,OOFOOOOO . 43 HOOFO --._. ---.". ... ".... ...... ............. "... ... .. .......... ' ....... 44 DC DC' OS ,OS DC . END' . . .... ............_.. -_ .... _ ..... - ._- ....... - ~@QQQQ@ 3,SV2;' ..- - - -........--.--..... ".....\..... - .. -.-..-.-- .. ---~':.----.-.~.--- ... , 3,SV2 36 ADZlZ I ~ X@OOFO@ L LM . . .. ;........_...... -.......I ItADFIOCS 2, S VI .............-..... BeR' I 0,1 Be L .. ... LA ... -. 000060 o~pOOOOO 39 AOFiocs --OOOOB4'~ OOPOOOOA .. ~--·-.··-· ..~-· . ~ ..· _.. _ ... _ ......... _..... -:._.. 40 199' , 2, 14 15, LEAVE -"000068 0000000000000000·· ...... _· --" ................... 38 SAVE 000068· --'00008t"":' LR 30· 00005S'984F B05A 00068 34, 00005C' . 0 1 f 1 " -._-.. __....... ,--------.............·....---.... 35 OOOObO OOOOOOOE .. ...... ........... . 15 t 1 . 0%4, 14D, (99 ....-... - , 8,BVPASS 2,SVl '. . BCR 28 ST 29 ..·-----·-·----·, ST 000050 5830 BOAE' OOOBC 32 -'00005'4 4114. 0004 .. ..... ' .. ~..... -...--:--. 00004' .... - 3 3 LEAve 00005E 0000 1,AOFloes eLC BC' DC . DC 31" BVP.ASS . ~. ... 4,15, SAVE' ....,........... l 26 21 ...... -..... .. . ...... _............... -: . .............. --_.-.. H ,Ct-IK 99 'Z5'-"-'--':':BALR' ... ......- _n ....._ 000040 5020 'BOAA I O%4,4D,HOOFO . ... .... ------..-.-.. _-_ ..... _- .... -...... - .. ---....---.---.... - -----.---- ·eLC 000028 a-1Ft . " 20 00002A D~O 3 EOOO" SOA6 ~OOQOO . 00084 ... _._ .. 21 CHK99'-'" 000030'4780 U03E 0004C ·22 -0000.34"': i'82E ...... ' ......... -.. ,_._-,_._.-.-_.. ,.. . 2'3 .... ---.-.... -... - ~·OOOQ·44 I ADDRESS OF Zll ADOReSS'OF~IJTACO~' .......-.............. USING lll,11 4, a 16 OOOBe 11,1 . LR 00000 18 00068 ....... 19' • . .. .~. .... 1 LR 000020 56l0,BOA2: 000024 984F 60~"" 000D3e OOFO 00003t: '0000 15, 14 DROP .. ... .... 0002 A''''-'': 1 '1 ... -...._.... -.....__.-.. BC 000036 5810 DOA2 00003A 0501' ......... --._-,-, .... _...... red. (..~er"~ ),' . LOAD 1 ,AD 1BCOM .......... HCR i" 0 WfTH (OAD 1 WITH L L 00001 C 4 180 801 C ........... _-._.... ....... ~~...d • *, ........ '''-'''- .... 000014 1840' 0- . •. 10 US I NG 1 . ~ . . I 11 ll1..---"· S fM. 4 t 15, SAVE .......------..... -._............__ ._.•..... ··~--··. -··· .. ·-··-·· .. - -.. -··-··- .... ·I OOOOOE . OOOOOE' ·'q·04F"·1·05A--.----·-----..00068 000012 F-"~4- S -*ep-{.7- . rl2iJ5 f:f-:3'_'?fI~i .... _. c._I,.~_o:\."les. f yo.:>m .. g,.$ .... e ~.s ;.,.." ___ ~ ' .. ;<1l" . ............. . -'06 a a00 .-.. --,..-.. TEeg ~ - 1 t 4%4D'- 4,15,SAVE 15, 1 ... _._.-................." .......' .........- ................._...,,--'. . ...-..... _-"..-... - . _ ...... : ....... ".:. t- .. ·-_·,-- _... ..,.--- .,. - ......... - '-' A%llio A%IJTACOMD 18FGlO@ A~a JTF I "'--" OSc FG110ial F F XQ)OOfOruuLQ.Gl ; ... .... SESSION REPORT o Session No~ Session /, J __~/~~~/~~~o~'~~~;Tt~'~~c~-LL:: ___ - _________________________________ Title~~/~/_>~?~~) Chairman: Speaker: i,(,'.. p /1 Ii ~2 Ip IJ ~ at'de" l kl..z'~, o Summary; -::- 14/1./ /d ( Topic: ! 5';::/0 II~, ':' )I;,i~> .s:c \-. f f ,../' J~,' hd-jr. c· ". - : [ / --t/... cft,"b\";: 'Ok! ( C~~"./ ., . 7/.:-r-z/-~~t:/ Speaker: _________________________________________________________________ Topic: ___________________________________________________________________ Summary: _________________________________________________________________ NO. OJ? ATTENDEES: ~~~~: X k0 o 50S " ·IAJ·.~ ' / ~ ,'r. . ·--~.,'f , ',j" , o i I I t r I , OVERLAPPED, PRINTING ~OE IBM 1130 C~MM~CIAJ.I APPLICAT:!=ONS USInG FORI'RAN WRITE STA'I'FJ.1ENT by B. J. SHAIN THE SHAHINIGAN -ENGIN~gERING COl'1PANY I.IMli"£ED Box 3010 Stat,ion B, Montreal, Cana,da.' S06 TABLE 'OF COlrr~~TS ABSTRACT i DISCLAIMER 1i TEXT ·1. Use of Fortran for Commercial Applications on the IBf.1 11-30 II. 1 Programming Philosophy Using COInmercial . Subroutine Packages 2 III • Difficulties Presented by the Usc of Commercial Subroutine Packages IV. 3 Use of Fortran \'lRITE Statement for Output in Conwercial Reports - Definition of 5 Alphabet~c Literals Using Fortran 8- ,v. Performance of the Subroutine 9 APPENDIX I .- Fortran Output Users-Guide \-TRITE ~ou.t~n~, with Overlap . 12 12 REl'..D o , ' SO? cont'd Page· APPENDIX II Loading the Overlapped Fortran Output. Routine 16 APPENDIX-III -Source Listings ( 17 ., ~. , , 'V .1 -1- - ABS,]~RACT A method is -descr:i.bed- for incorporatin~ overlapped. printing -- into IBM 1130-Commercial FonrrRAN programs. Communtcation- to the subprogram which performs a printing operat"ion is a.chieved. th~ough the FORTRAN WRITE statement rathe~ than through the CALL statement. -. tha~ The advantage of this method _is limited use can he made ofth~ formatting ability of the Ji'ORrRAN language. Headings can- readily be j.ncorporated, and the layout of the printed page specifica1ly by use of- FOru1AT -statements. (' - '-_ I o 0 ·" I -----...- ..- ...,. .......... ·...... ,-.--~. -ii- ( DISCLAIHER Although each progra.m has 'been__ tested by its contributor, no _-war:c~nty, _express or· implicd,is made by the contributor or - COMMON USERS Group,. _.as to the 'accuracy and functioning -of the program .. and .- - related proBram material, nor shall tli"e fact of - . _distribution constitute any s:uch warranty, and no responsibj.lity' is assumed by the contributor or-' COr·1MON USERS Group, in conn-ectlon therevlith. o ,- OVERLAPPED PHINTINGFOR IBM 1130 COMMFA1CIAL APPLICATIONS USING FORrRl\N v':RIrrE STATE'riffiNT . I. - Use of Fortran for Conmlercia1 .~ppl:tcattons on the IBM 1130 • . - Since the IBM l130.was conceived as a computer to be used for the' solution of moderate siz.ed engineering and scientific problems, Fortran is the only compiler .supportedon the system. inst~llations, Atmany it is necessary to use the computer, not only in this prime role, btlt also in the preparation of. commercial reports, such as payrolls, labo-r dis'tribution, and time control. In order to penult the use of Fortran for these applications, ("'-'. a number of subroutine packages have been developed. IBtJl' s --./ o Commercial Subrouttne Package, Version II, is an example. are the contributed program packages COHh""T and I1JE~IJ' Others The purpose of these subroutine packages is to overCOnle the problems which would other'~.,ise cations in Fortran. be presented in handling 90mmerc.ial appliPrirlcipally th~se are the folloi,vinS: 1) Moving character strings. 2) Use of floating.dollar signs, check protection, etc. 3) Elimination of round-off in crossfboting totals 4) Zone recoBnition 5) Stacker Selection - - 6) Overlapped input/output for increas:i.ng processtng speed. o -·s// , '--.. _------------- Use of Fortran - for Cotmnercial A-pE:~~C2.cl,tions on the IBM 1130 cont I d The first five j.tems' in the It-st 'abov,e exist. ,-on account of' the fact that Fortran is not intended asa commercia]. dat,B- processing language. 'l'he sixth -item' occurs on account of the fact that the Fortran compiler for: the IBlv1 113-0 has been design'gel to conserve- cor.e space as much' as possible. - . The normal input/output_, subroutines for use vlith Fortran -use the same_area in core as a buffer area to contain the image of a card being read or a line being printed. ,It is th~refore not possible to overlap these opcrattons, although the interrupt hard\{are provided on the system \'iould other,:iise penni t ~' (',-.. . this to be done. In the design 'of the IBN 1130 Commercial Subroutine '/ Pa-ckage, it has been recognized that for commercial applications, pr~cessing speed ~,s~}.unes a greater importance. Overlap of inp..l t/output operatiQns h::l.s therefore been achieved at the expense of the ad,d:itional(() core required for multiple buffers, and for the more con~licatea -subroutines Tequired to seryice the interrupts. II. Progran1"ning Phi1osop}:ly Us~ng Commercial Subroutine Paclzages The programming philosophy usually 'employed \{hen commercial sub-routine pack~1ges 1) are- used ~s as fo11m'Ts: Input data 'on cards- is read and stored as a'·card 'image, in EBCDIC form. i~ 2) A sUBRourrINE subprogram used for this purpose. Tests are made to deterrnine the type of card which has been read. --3": O~" - P~og~~mming Philosophy Using Commercial Subroutine Packages cont'd " 3) Data is extracted from the card im~ge, 'and stored for subsequent calculations,', If 'it is to be used, in arithmetic opel'at:io ns, nurr'lerlcal data- is converted to a code Ylhich permits these operations to- be performed. 4) "At the conclusion of-the nec_essary calculations, an j.mage is built up of the' output :Line to be printed_in the report. Numeric infonnation is reconverted to EBCDIC code for inclusion in this output line image. ( The output line is printed, using a SUBR01Il'INE-, c subprogram. The use of this philosophy imposes virtually no restriction on the manner of pr_escntation of data in the inplJt file, or on the appearance of the final report. The subprograms' for carel , -reading and printing permi't. overlap of these operations. '-lith _ each other. ,Conversion _from card cocle to -EBCPIC is also over- lapped with card reading. -III._ Difficul~ies Presented by the Use of Commercial Subroutine Packages. ~--, Al though the use of cormnercial subroutine packages in the manner described above overcomes the shortcomings of }I'ortran for commc-rcial -,' s/a ----~~-~. _.__ ._--------_...._._.__ ...-... __ .. .. __..__._-------._--_.--_ . l. -4- -- to l cont· d ~ applications, a-number of' additional difficulties -are introduced. j 1 ~ Prinqipally these ax:e the i'ollm,ring: 1) ,i The introduction of headings into the output report. 2) - Loss of traGing capabili ty.. IB1~ 1130 Fortran has been providedvTith a very useful trace feature. This cannot be used \-Then -the overlapped input/output subroutines of the Commercial Subroutine Pack[-tge are loaded, as it is not possible to include the Fortra.n input! output subroutines- in the sa.me core load. The Fortran ·"\. ! C ! ; input:/output subroutines are required- for theuse of the trace feature. 3) A consid.erable amount of ma.nipulation is often required to build an image of a line of the output report. ~onger h) This tends to make the coding-of prograxas and- more prone to errors. The introduction of masks for editing. The use of Commercj:al Subroutine Pacl~age EDIT subroutine reqtli:r:~s that non-numeric :Lnformation to be mixed into a numeric field (such as $ -. etc) _be :Lntro- duced iOn the form of a mask, \olhich is- suhsccluently .0 o ~.!!f~~}j~~e£i. -E~~E~!'t(:.~..E..:Y:_ th~ Use-=-. of Com~~~_a~_~u~~::n.rtIne Pa_ckagcs. -- cont' d applica.tIons, a· number of JtcJdi tional difficulties are introduced. Principally these a:re the follouing: 1) The introduction of headines-- i~to the Ol!tput report. 2) j:Joss of tracinr; capability. IB14 1130- Fortran has been providccL vlith a very useful trace feattrre. This cannot be us eel. \·rhen the overlapped input/output subrout-inuj of the Commercial Subrout.ine PacJ~agc are loaded., as j.t ls not possible to include the Fortra-n input/output o subroutines' in the sam~~ core load. The Fortran' input/output subroutines are requtred for the use of the trace feature. 3) A considerabI·e amount of mB,nipu1ation is often required to build an image of a line of t.h.e ou.tput report. This tends to make the coding·of programs --longer and more prone to errors. 1~) Th8 introduction of masks· for cdi tine. of COlil.mercial Subroutine requir~s Pac}~age The use EDIT subroutine that non-numeriE j.nformat5.on to be mixed into a numeric field (such D.S $ • etc) be :i..ntro- duced in the form··of a mask, vrhich is subsequently o SIS -----_._"".._----_ .. __."-_.,,_._.,,... """""~-~""~~.-~----~------------ . - - - - - - - - - - -..- - - . -5" rf~ Diffj"cu:;~.ties cont t d.L~) Presented by the Use of Commercial Subroutine Packa.ges destroyed by the"inclusion' of" the numeric information. In vie"\-, of the fact· "that alphabetic Ii terals.- canpot be directly defined in the IBM ~130" F'ortran". compiier, this operation is clumsy (Note - Version 11of the IBM 1130 Fortran conipiler includes -the DATA " statement which overcomes this difficulty). IV Use of Fortran "']RrrE Statement for Output in Conunercia1 R~R.~ts. At 'rhe ShavTinigan Engineering Company JJimited offices at Montreal, Canada, an IBtJI 1130 computer vras" installed in Janu.ary 1967, pr:!-rnarily to perform engineering calculations. HOv7evcr~ it was desired to use the machine for processing the conmlercial reports which llould be required for the administration of the Company. _ A study was made "of the available software fo~ cOITilnercia1 pro- cessing, and as a result a set -of subroutin"cs "lritten, '·lhj.ch combined the best features of" the IB!·1 1130 C,ommercial Subroutine Package, COIvl1"T,,, and IDEAL. In recognition of the difficul tics vlhich would be presented by the' use of SUBROurlllE subprograms for printlpg, after the ~9-nner of the IBM Conunercial Subrout?"ne PacRage, it vias deciclccl ~o adopt a differerit approach" A new" subroutine SFI¢( the" subrouti.ne 'fh:tch handles in Fortrcl,n the :input/ou.tput "functions) "las "Y[1"i t"Len in "c~ S/6 '. ---".". __.......... "-.~.--"-,,.,, ..- - , , - - mmn Ill!!! TUII!f!M!I!!fW iTV" Me,-"';, -6Use of Fortran vl~~ITE~ st~~ement for Output in ConuUl.~rcial Heports cont 'd 1130. assembler langua.ge, "having more . limited capabili tie~ than the _versj.on supplied-as part o~: the sy~tcm, but taking advant-ages .. of tpe overlap feature of the hardHare. 'l'he ad.vantages of this-- .-:procedure over the tlSe of the Commerc:i.al.Subroutine Pacltage subprograms are the following: 1). Head.ings may be introduced' by the use of a FORMAT - - 'statement, as is done in norfllal processing using Fortran. Tracing can be employed. The amount· of' m.anipulation requj.red· to format an output. line is reduced, as the FO:ffi·l~T statement may be used for this purpose. ,. It yTaS not considered necessary to incorporate al1- the features . - 'Which are supported by the normal SFr¢. subrout:l.ne as supplied /'\.. -in the system. Indeed to have done so would have resulted ip. a su.broutine oc<;!upying a large core space, a consiclerable -portion of "Thich \vould have been ·wasted. on features vlhich would be rarely used ~n the COlI~mercial area. The follovTine restrictions were therefore iI}troduced: . . , 1) Only integer variables and arrays Ihay be-included in -the output 2). list_~- -X'ONg 1'lORD ·-Ir-fJ~EGgRS option must be used. o Sf? ----....-.....---.---.--~......... ....-.....-.~~..~~--------------------- .. . , ' -1( Use of }t'ortran vlHEL'E Statenlent for 3)' Ou~put in -Comrnerctal -Report~ Card reading is not 'supported, and all ·wr:i.ting is done on the 1132 printer, regarCUess of thedevic~ cod.e appeari-ng in the \v~ITg staternent.- Card, type"i'rrj_t-er and console input/Qutput are. . haru:l~ed by SUBROUTINE E}ubprograms' as in the IBM Comrnercj al Subroutine Fe,cka-ge. 11.) Only the follo,\-line; format field specifications are recognized: A . for alphameric information. The only .- field widths recognized are Al arid A2 Anythins else is interpreted asAl. I X H for integer variables ·for spaces for printirie alph$.betic - information. form using quotes ma~ The group repeat, e.g. 6) Carriage control characters are restricted to 2(lHl,12A2), ie;" not recognized. the follo\-ling: Blank . -Zero 1- 6' The also' lYe used. 5)- Print on next lineSkip 011e line before -printilig Skip to channels 1 to 6' o cont 'd -8.,. ·r1l>\ ~-- Use of Fortran \1RJ:ll'E Statement for Output in Conunercj.al Rep?rts cont I d None of these restr:ictions prevent the, use of -the system in association uith Commerc1al- Subroutine Package, C_O~JfE,T _or IDE.A.L. An attempt. to pi"int a real varia.ble "Till resul tin the outputfie.ld being filled with asterisks.. tracing to j.nteger variables only~ This restricts the use of l?eal variables· appeari].1e; as a- line of asterisks. -It is our experience that this is not a serious restriction, as it is the values of integer variables which determine- the logic flmv of a program. If it is necessary to determine the value of a real variable for tracing purposes, then this can be done by converting it to ]-;}3CDIC, for display using a vlRrrE statement temporarily inserted in the program. , Definition of A~habetic IJiterals Using Fortran HE..A.D Statement In order to perrrri t the d.efini tion of alphabetic literal character strings, a feature _"las introduoed into the re-,\"ri tten SFI¢ - to permit this to be done using the Fortran READ statement. The manner of achieving this is sho"1n- by the follO\.,ring example: DIMENSION IA(13) RF.AD (99,101) IA 101 FOHIv1Nf ( 'Tfirs -MF.i:)SAGE TO BE STOHED f_) - These- statemcl)ts cause the EBCDIC equi v$~ent of the ch8.racters containerl- :i.n the ·li'ORtvl.A.T statement to be stored in IA. - fication to the compiler is required. No modi- Characters are store(1 -- ~ -----------,.•- - -.. ,--~~, -.--,--." ... .. ----... " -,~~---~---------- ':'9- ,."" \lJ 1 Defini tion of t~o Alphabe~:Lc ~?- terals U~ing per ,vord. }i'ortran ~E:AD Ste.:!:-_cment cant 1 d If it -is desired to store characters onc' per '\-Tord, _then apprOl)riate, spaces should be introduced in the f:Leld. to be used for editing operations. V. Perforn1ance of the Subroutine Using the Disk Ivlol1:tt~r System, the subroutine is implemented by deleting from the dJ.sk the version of SFI¢ as supplied "\-lith the system. ,..-- The subroutine PRN'l~Z must also be deleted. The sub- routines SFI¢ and PRNXX, "\-lhich form the overlapped output pacl~age ". are then substituted. Note ~hat SFI¢ can be stored as a subtype 3. prograJu, '\-'hich permi t_s j.t to be included in SOCAL overlays. The subroutine PRN'rl supplied by IBM is also reqLilred as it is used to drive the 1132 printer. li10rtran programs should contain the record *IOCS(1132 PRII\ffER) or *IOCS(1132 PHIN'rER,DISK) depend.ing :upon '\vhethcr disk- 'input/output is requir-ed. The -principal benefit to be derived from using-the method 'is the simplicity of coding. Also the processing speed vhi.ch can be achieved using this subroutine is apparent.ly identical to that achieved usj.ng the overlapped output subrou.tines suppliccl ,·[i th I. I,j· . -10,:. Perl'ormance of the Sub rout ine cont 'd . the Commercial Stibroutlne-_Package.· The· core requirenlent for· _SFI¢ anq. PRJr'lX is "Torcls 1.t·70,-· -:Ylhich l.S some\.That in excess- of the equivalent subprograms supplied rlith the Cornmerci8.~ Sub- routine ~ackage. However, tnis is offset- by the slIk'1.1ler core - requirements of- programs rThich use this method. As an example, one of- the sample programs provi~ed '\vi th the· COlU.L'1lcrcial. Subrout;ine Package was modifi·ed to su:i, t_ the ..Q.Y~rlal'ped input/output sub. routines. The processings.pe.ed was· the sa.me in both instances. Despite the smalle-r and simpler main progra.m "Then using the overlapped Fortran I/O, the total .c:ore requi.rement i-s somevThat- larger, as ts shovH1 in the tab-le- below. . For· comparison, the . .-- , core requirements and pro.cessing speed using the normal Fortran input/output subroq.:tj.nes as supplied with the disk monitor system ·are also sho'\vn. Comparison of Typical Small Cormllercial AWli.c£\tj-on csP I/O Main Program Statements Main Program Core Requirement . Total· size of Core· Load Executio n Time o 102 94 ··978 850 5006 -5298 .1 32 min sec Stanclard Fortran I/O. Overlapped Fortran r/o 1 32 min sec.- 83 "' - 800 4858 2 1~5 min sec. ··S:LI _ _ _ _ _-'"-_ _ _ _ _ _ _ _ _ _ _ _,_..-.-.....,UO:,..... W""".'L~· . ,',~, ·1 r",,:','- f ! f , '-11- Performance of the Subroutine 'cont t d The problem selecte4 "\-Ta's _the" invo~cing problem vrhich is included as SampJ_e Problem 2 J_n the IBM:. Commercial Subroutine Pa.ckage, ·Version II • . It is considered that for programs' to produce la-rge and complicated cc:>mmercial repo:,cts, "\-The~'e the size'of a core load becomes - important, the total cQre load requlrement of programs using the output method descriQ.~d here "\-Tould be smaller than \TGuld be required for the - same programs using the Corrnnerctal Subroutine Pac$age; o I , · O I· S~" I' W'Z!i¥l!T-l!ff wn llrr-nT1!!fI 2f!P-fW!'..-rZ!t!:r::r:: APPENDIX I '. C. "'\,I J') ]'ortran Output Houtine, ,,,i th Overlap Users Guide. This "is a program to' replace t!l.e IB~1. ,libr~ry program SF'I¢, .'Whic)1 is called for Fortr.an input/output operations. Its '. purpose is to permit overlap of' printing, card reading -and processing, for commercial appli~ations. Ii'or this reason,· pei~ missible devices, allo1·rable variable types and format field . specifications have been restricted. Only integer variables and arrays, are recognized. *ONE \-IORD INTEGERS option must be used • . rlRITE ~ll writins is done on the 1132.printer, regarcUess of the devic-e code appearing i-n the \-lRITE statement. If it is desired to vTri te on the Console Printer or punch cards then an appropriate S:tJBROUTINg subprograms must be used. Data to 'be printed must be stored in EBCDIC or integer form as an 'integer variable or array._ The follovfing F9HMl\T field specifications are recogniz-ed: . A· .for alphameric information. Th~ only field widths recognized are A1 and A~. Anything else is .interpreted as Al, ",ith no error indication~ I for integer varlablp.f: .-13., o· cont'd x for spaces H for prlntj.ng alphabetic. information. The form U.stilg quotes e.g. ~_THIS MESSAG~' Field repeats .e.g. The group repeat, e.g. may also be used. l-2A2 2(lHl, l2A2), vTil1 not be recognized. The max-imum nur;lbe}" of characters per line is 120, excluding the carriage control chara~ter. The use of E or F field specifications will cause the field to be filled ,..,i th asterisks ",i thout further indication of error. The first character of a line 'fill be treated as a carriage control character. The follo'\vine;characters are blank print on next line o skip one line before printing 1 - 6 skip to channels I to recogniz~d: 6 - All other carriage control cha.racters are treated as blank. The follo'\'ling errors vTill cause _a program stop ,.;i th the error code displayed in the accumulator. EEOl EE02 .·line exceeds 120 charaC"'~ers invalio. forina t- type· -0 "if j"'"au o RFAD No read statement, accepting information froni an external medium .is inclucled. 1:;>~ Appropriat.e SUBHOUTINE subproe;rams must -for input from the card reader or console keyboar~. use_d The fol101·r1ng stateme:1 t is provided in order to generate alphabetic literal array-s. REI\D(99, n). IA or READ(99,n) IA(I) RE.4D(99, n) (IA( i), I:::K, L) RFJill(99,n) ((IA(I,J) ,I::K,L) ,J~I.1,N) (c ",hich transfers H-type fielcls from format statement ,variable or array lA. 'n' into The characters \-rill be stored in EBCDIC form,' 2 characters per viord. in the FORHAT statement. Only. H-type fj.eld_s are permit:ted If the nurnber of char-acte~s in a _field is odd, the rie;htmost character of the last vlord. is filled "lith a blank. filled. Characters Hill be moved until the array is If' the FOH1. 1A.11 statement is exhaust"cd, - control return to the last open bracket ~ will The foll?"lin& e"rrors \·rill C1lasc a pro8ra.m stopvith the error code displayed ·in the accumulator. EE02 format not II-type EE03 device code not 99 This rout ine uses the DJN library subroutine IJRl'TTI. o Since printing occurs :tn overlapped mode, a call to ION]) must be made before a PAU0E or STOP statement. -T" -15- READ " I cont'd The inptit/output routine requires ,the use of -X-I,OCS(1132 , PRINII ER). SinceCOl:l1nunication to the card-reacler, or typc,'rriter is th:rough' CALL statements to subprograms vlhich load the approprj.ate card or type,?ri tel"_ subroutines, then CARD, TYPEHRrrEH or h'"EYBOARD must not apl)ear in the *IOCS re'cord. Tracing may be used in _conjunction "'~th this overlapped, I/O routine. Since real variables are not c~nve::cted by" this routine, they vTill appear as asterisks in the ~racj_ng output. _ o A~PENDIX II 0Us;i..ng the disk monitor system, the folloi"ing procc_o.ure is required. Load the oyerl~pped verslon of SFI¢, ana, PRNXX. Note that SF1I?; carl be designated· subtyPe 3 (punc!l 3 in column 11 of -l<-S1. 0RE. cardY', and hence "can be includ.ed in saCAJ.) overlays. 1 ,- PRNXX cannot be included In overlays. Core Rcqu:lrements:. SFI¢' PRNXX- - 456 ,words II .. The IBM supplied subroutine PRNTI and lf5tJP from the Com.rnerciaJ, Subroutine Package are also required. o ------ ....---'------.;....------,--------_._------, .. II ASM *LIST SOURCE PROGRAM LIMITED CAPABILITY I/O SUBROUTINE ; * WITH OVERLAP * LIBR ----0000 22189580 ENT SFIO , 22645100 0076 ENT SRE-D 0095 229998CO ENT S~1RT 0013 22256240 ENT SIOl OOlF 22256267 ENT SIOIX 0026 002F 0033 01C4 22256049 " 22256180 22006517" 176558E9 0000 0001 0003 000'+ 0005 0" 01 0 "0 01 1000 66800003 7212 6.AO 1 4COOOo"07 * SFIO * ENJ 510AI ENT SlOP SCOI\1P" ENT E"NT o PRNT-l MAINLINE PROGRAM NOP * LDX 12 MDX STX Bse 2 18 2 *&1 L * INITIALISATIO~ SET XR2- TO - LIB F& f -RETURN TO START OF PROGRAM - END OF MAINLINE INIT1ALISATION CALL ROUTINE _ RETURNS TO MAIN PROGRA~ T~ ~ET '* *" NEXT VARIABLE DESCRIPTION CALL LD LOOPS TEST FOF I/O OF cor·1PLETE S ONEl ARRAY BSC L RETRN,& MDX L VARAD,-l INCREMENT TO NEXT WOR~IN MDX L LOOPS,-l ARRAY sse L DECOD GO TO DECODE RouTINE " RETRN SSC L * RETURN" TO "'"1A I NL INE PROGRAi'10 * MAINLINE PROGRAM CALLS ONE OF FOLLO~ING "ENT~IES 5101 NOP ENTRY FO~ SINGLE INTEGER SET XR2 TO LIBF&lLDX 12 * LO 2 0 GET AQDRESS OF VARIABLE UPl MDX 2 1 COMPUTE RETURN ADDRESS 5AVAD STO L VARAD LO ONEl SET LOOPS TO 1 LPSET STO LOOPS SAVE RETURk ADDRES~ STx ~ RETRN&l GO TO DECODE ROUTINE "BSC "L DECOD 5IOIX NOP ENTRY FOR SUBSCRIPTED INT. SEt XR2 TO LI6F&1 LOX - 12 * GEl ADDRESS OF VARIABLE LD 2 0 MODIFY BY XRl A L 1- JO INS I 0 lEN TR Y MDX UP} ENTRY FOR ARRAY SIOAI NOP-" SET XR2 TO LIBF&l LDX 12 * GET ADDRESS OF VARIABLE" LD 2 0 STo L VARAD LD 2 1 GET NOo OF ELEMENTS MDX 22 COMPUTE RETURN ADDRESS MDXLPSET JOI N 5101. [NTHY -r.- THIS ENTRY TO" SATISFY LISF SIOF IN TRACE ROUTINESo JOINS SIOl * Nap SIOF LDX 12 * SET XR2 TO LIBF&l MDX 5101&3 JOIN SIor ENTRY FOR END OF OUTPUT scor"ip NOP LOX 12 * SET XR2 TO LIBf&l ._~_r~_A_____l_"6_ _ _ _ _S_E T LOOP? T?_~ £~ * (030 9069 01 4C080011 01 74FFOlll 01 7LI-FF0038 01 4COOOO8D 01 l}cooeo 13 0007 0008 0009 0008 OOOD OOOF 0011 0 0 0013 0 1000 OCt14 01 66800016 0016 0 (200 0017 0 " 7201 0018 01 Dl tOO0111 OOIA 0 (057 0·018 0 D01C 001C 0 6AF5 0010 01 4COOOOBD Q01F 0 1000 0020 01 66800022 0022 0 (200 0023 00 84000001 0025 0 " 70Fl 0026 0 1000 00"27 01 66800029 0029 0 (200 002A 01 D4000111 002C 0 (,201 0"020 0 7202 70E( 002E 0 002F 0030 0032 0033 0 01 0 0 1000 66E500032 70F3 1'000 " 0034 01 66800036 0036 0 1810 ~- ___"__ ._ \,1 I ~ I 'I I,j "--~-----"""" ----- 1'-1 .. "Jr· l PAt 0037 0 0038 70·E3 0001 - 00.39 o 00-3A 0 0038 OJ. 003D 00 003F 0 6200 7201 l~4 0 0 0 lll~ C4000002 001+0 01 OOltS 01 0047 00 0049 01 OOl.S o 1 004D 0 OOltE 01 0050 0 0051 01 0053 0 0054 01 0056 0 ('+800112 4802 1808 E030 4L} 00_0134 ('+000002 irCO 40 0 LtD -740 1 0 1 1 2 9026 4C28003A (023 [,(040054 7069 74010112 7066 0057 0058 OOSA OOSC 005D 005E C01C· D4000002 'iAOO0114 72FF 70F( 70SE 0 0042 e 00l+3 0 004l~ 0 0 0 00 01 0 0 0 1010 MDX· JOIN SIOl ENTRY LPSET LOOPS S;;S ARRAY COUNTER 1 END OF CALL ROUTINE * HTYPE ROUTINE * TRANSPERS·H"';TY")[ CHARACTERS TO I/O BuFFER * HTYPE LDX 2 0 SET XR2 AS CH/\R - ~OUNlER HLOOP ~iDX INCRCt COUNT 2 1 BSI L LINE LD L 2 BIT lS·OF Xf-~2 TO CARRY SLA 16 LD IFfvlT GET CHAR F RO~1 FOI~i/iAT C_ BS( SKIP IF. EVEN Ct-IAR -SRA 8 IF ODD, SHIFT RIGHT MASKR· e LEAr~ GARBAGE AND B5 I L lOFIt MOVE TO. IOBUF L-D MOVE FGRrvlA T POINTER IF L 2 SSC SECOND CHAR I N---:~\ OF~ D IS L HODDt"E MDX L IFMT,l MOVED HODD S TEST FOR LAST CHAR CI F~'JI DE BS( L HLOOPt&Z LEAVE WHE;''-l DIFF -0 END OF TRANSFEf~ IF ODD NO FvJI DE LD Bse L HEND9E OF CHARACTERS, (,-lOVE FORr-"lA T rw1DX POINTER DECOD HEND . r\1f)X L I Fi-tiT ,1 MDX OEeoo OF HTYPE END ROUT It~E "* XTYPE ROUTINE * OVER CHARACTERS IN I /0 BUFFER *XTYPE SKIPS LD FvJ! DE SET XR2 TO FIELD ~'JIDjH STO L 2 XLOOP 8SL_ L LINE TEST FeR LAST CHARACTER ·MDX 2 ..·1 MDX XLOOP -MDX DECOD END OF ~TYPE ROUTINE A-TYPE ROUTINE "* itTRANSFERS ONE OR TwO CHA-RA CTERS FROM VArtIABl.E TO I t~o BUFFER * ATYPE BSI L LINE TRANSFER LEfT CHAR/\( TEi~ lD VARAD I SRA 8 STORE BSI L IOFIL LO FWIOE S ONE1 - & BSC MOX CALL BSI L LINE· TRANSFER RIGriT Cr-iARAC.T Ei~ LO 1. V-ARAD AND MASKR BS! L IOF!L (ALL MDX ONEI DC 1 STORES FOHi\lAT TYPE FTYPE BSS 1 STORES FIELD \~ I DTr-I F ~-J I DE BSS 1 /OOFF MASKR DC END OF ATYPE ROUTINE *INITIALIS!\TION ENTRIES * SRED CALLED BY READ STATErvlENT 0 -. ~. OG5F 0061 0063 006'+ 0066 0067 . 0068 0069 006A 1 44000114" (4800111 1808 4'+000134 COOD 0 - 900A o _ '~808 0 01 01 0 01 0 0 709D l;A-00011'+ 006E 006F 007L 0072 0073 007Lj. 0075 0 (4800111 E006 '+4000134 7095 .0001 _0001 0001 OOFF 0076· 0 1000 006e 0 0101 001 0 - * 5RED Nap Sc2~_ --..~\, '~-.. '-19- 0077 01 0079 00 007B·0 -007C 01 007E.30 ·0080 0 66800079 C6800000 901E 4C180084 09595100 COJB _STX SRA -'STO SWRT 0098 O' C07A 0099 0 70EB ! ... EXIT . -SET LD L STO STO SSC NOP LOX LD L 12 READ S\vI TCH COMPUTE RETURN 2 2 L f ERROR. DISPLAY IEE03 2 RETRN&l ADDRESS - 16 SET 'INITIAL CHARACTER IOCHR ONE MULT LOOPS SET COUNT- SET fvlUL T IPLE F ItL.D_ ARRA~ COUNTER .. - COUNT . I ~_ CALL * SET XR2 TO LIBF&l SET \'1 R1- T E S v!l TCti ONE MDX SAVSW DC 99 THREE DC 3 EE3 DC IEE03 _ END OF INITIALISATION * FIELD ROUTINE * TESTS FIELD TYPE ** .,TRANSFERS TO APPROPRIATE ROUTINE * TO MOVE TO I/O BUFFER FIELD LD FTYPE S . HCODE TEST FOR HTYPE BSC L HTYPE.& .... A HXCOD T£S1 -fOR .XTYPE BSC L XTYPEt&-.S SXCOD TES T FOR -SLASH BSC L ATESTtZ 0063 0003 NINTN EE03 - (OD5 906D 4(180039 8010 '+-( 18 0 0 5} 90 16 4C2000AA 44000150 7013 OOAA 01 74000038-· 7004 QOAD 01 44000150 OOAF 01 4:(000011 OOBt p 800A AlEST -OOAC 0 as I L MDX . PR I NT DECOD MDX LOOPS,O ATT·S T L MDX aSI L BSC - L ATTST A BSC L 0082 01 4C18005F 0084 0 8005 00 H5 0 1. 4 C1 80 1 79 00B7 01' l{·(0801BF OOBA a OOSB 0 -_OOBC 0 ·003C O· TEST .DEVICE NO. EE-3 - MDX 6A86 18-10 OnOD 01- D400014F 008F 01 (4000113 009.1' 0 DO 7 7 0092 0 OOA5 0.093 ·01 4(00-0007 0095 0 1000 0096 01 6680"0098 _-00 B9 o· -. BSC . L /38. - 16 ROK· SRA SAVS", STO L 'READS LD 2 1 - STO L .. I F~T 008B·O OOBC 0 -' 0 aA2 0 1 00 A4 ·0 -00A5 01 00A7' 01 OOA9 0 SET XR2 TO LIBF&1 WAiT. C201 0088 01 0[+00·0112 OO"8A 0 7202 009D 0 009E 0 009F 01 OOA1 0 1.2 O' LD 0087 b.·· 009A 0 - 0098 0 009( 0 12 S NINTN BSC· ·.l..._--..--ROK t.&CALL IOND DERR 0081 0 3000 -0082 00 4(000038 0-084 6 1810 0085 01 D400010A * LGX LD· . A sse BSC MPX 7034 L l TEST FOR SCaMP CALLED PRINT RETRN SACOD ATYPE,& .... TEST FOR A TYPE HXCOD TEST FOR I TYPE _ .ITYPE,&f£TYPt& INVAL INVALID FIELD tYPE HXCOD DC /0001 HCODE~X~ODE 0003 5XCOD DC /0003.. /0004 SLASH-X(ODE 0004 SLASH-A(ODE IOBUF EQU /003C FORTRAN I/O 8liFFEH END OF EIELDFJUTINE· * DECOD ROUTINE * EXTRACTS FIELD TYPE ~ND WIDTH FROM 0001· SACOD DC * * ----"-- ---~---------.-~ .. --- For~MAT - Q STATE~'1ENT . -~-------.---~-~---------.----.--.------ .. . -----.-.-.- .... __._- -- --_. __ .•. _" ... _•...•..•. " - - ---.----.-.~~-~-----.--.-----~-~----- ···r * * '* * 0080·0 C048 OOBE 0 9054 OOBF 01 4C300101 00C1 01_C4800112 00(3 0 E04( OOelt 0 DOl+A DOCS 01e4800112 .00C7 0 ·lBoe 00C80 0045 00(9 01 74010J.12 00e8 0 903F Ooe( 01 l}C2000D1 ooeE n e040 OOCF 0 D039 0000 0 7030 0001 0 e03C 00D2 0 9034 o0 D3 0 1 t~ e2 0 0 0 E 3 OODS 0 00D6 0007 0008 00D9 00 DA 0 0 0 0 01 OODe 0 e03C 903C -NOML T L D OOFO 0 . C>OlC OOFl 0 ·3000 OOF2 00 I}C000038 ·OOF4 01 -C4000074 0106 0 70F2 0107 0 0008 1 STO LD BSC . I-FrvlT IFMT READS L BSI LOOPS NOMLT,Z RETRN TYPEC FTYPE WI DEC FWIDE READS FIELD,Z FTYPE A REPT,&laND MOVE TO RIGHT DIGIT STORES TYPE (ODE INCREMENT FORMAT·POINTER TEST FOR FI£LD REPEAT FIELD ~EPEAT, STORE NO. OF HEPEATS TEST FOR REDO CODE REDO CODE FOUND RESET FORMAT SCAN P6INTER TEST FOR READ READ SWITCH NOT SET PRINT. AND CHECK FOR seo~wip CALLED SET FIELD WIDTH AND TYPE END OF DECODING FOR~AT STo READ SWITCH sET, TEST TYPE INVALID TYPE EE2 ONE SRA STo TRANF LD· . I STO I MDX L SET MUl. r· I PL E FIELD COUNTER TO NOoOF WORDS ~N H FIELD 1- MU·L T IFMT VARAD IFMT,.l Bse L (ALL MULTF 'v1Dx L BSe MDX L MULT,-l READS FIELDpZ TRANF DC ~OT MULTIPLE FIELDt GET FORMAT TYPE AND DECODE STORES WIDTH OR REPEAT HCODE ·WAI T BSC l· /38 R EPT . LD L F~I I DE REDO Fo0~D NOt~LT,~ PRINT .LD L Bse L asc L SETF LD STO LD STO ENDDC LD BSC L· lD S BSC L INVAL CALL LD · LD PREVIOUSLY ~1ULTFt-Z WI DEe · S Bale 1801 OOF8 0.0010 .. 00 F9 0 1 Cl~ 8.0 0 1 1 2 OOPB 01 D4800111 00 F DOl -, 4 0 1 0 1.1 2 OOFF 01 4C000007 0101 01 ?£.rFFOI09 0103 0 C006 0104 01 ~e20009D ONE L · AND MASK2 S TO -. WI DEe LD I IFMT· SRA. . 12 STO TYPEC · MDX L IFMT,l - S FREPT BSC L REDTS,Z LD WIDEC STO MULT MDX M-ULTF REDlS LD TYPEC S REDO Bse L SETF.Z LD I FMl S ONE l}073 OOEl 01 4C000011 00E3 0 C02A 00E4 0 D08E 00E5 0 . (029 - 00E6 0 0080 00E7.0 C022 00E8 01 4C20009D OOEA ··0 C088 . OOEB· 0 9020 OOEe ·01 4e1800F4 OOEE ·30 09595100 OOF6 0 OOF"! 0 S· BSC 0039 (030 It C08 00 e 1 OODF 0 I, L}e2000( 1 IF END OF FORMAT· stATEMENT, PRINTS AND RES-ETS FORt·1AT SCAN. POINTER· * IF READ· 99,XXX ,TRANSFERS t~ARACTERS DECOD LD MULT TEST FOR MULT1PLE FIELD 9037 OODD 01 C4000038 IF MuLTIPLE FIE~~, SETS MULTIPLE FIELD COUNTER /OOOE; TRANSFER CHARACTERS TO VARIA~LE TO CALL ·TO SEE IF DON£_ REDUCE MULTIPLE FIELD COUNT TEST·FOR REDO INDICATOR :5"3./ - . I' . " ----vJ _______________ '-21;_-_ _ _ _ __ I; i 0108, 0109 OlOA ---- 0108 0 OlOC 0 0100 0 .010'E 0001 0001 0001 0009 0005 EE02- OlOF '0001 0001 0110 0 0111 0112 0113 0 0001 0001 0001 OfFF TEMP BSS BSS 1 1 MULT READS BSS 1 ·FREPT DC HCODE DC DC EE2 TYPEC BSS WIDEC BSS MASK2 DC /0009 10005 IEE02 1 1 10FFF VARAD B-SS I F~~T BSS ONE * **, ** o MULTIPLE FIELD STORAGE o FOR READ 1 FOR PRINT TEST .FOR FIELD REPEAT TEST FOR HTYPE FIELD ERROR DIS~LAY-I~VALID TYPE TEMPORARY STORAGE fOR TYPE TEMPORARY STORAGE FOR ~vIDTH 1 11 POINTS TO VARIABLE ~POINTS TO FORMAT STATEMENT DC LIN E . ROU TIN E CHECKS IF LINE IS FULL lEE 0 1 IFF UL L', 0 THE I~ It) I S E I~CREMENTS LINE COUNTER IF START OF LINE. CHECKS PRINTE~ READY, AND CLEARS 1/0 AREA LINE BSS 1 CHECK FUR START OF LINE LD IOCHR Bse L NOTST,Z START OF LINE, CHECK TESf3 LIBF PRNTl PRINTER NOT BUSY DC. 10000 ~- 0114 01150 0116 01 011s 20 0119 0 011A- 0 0118 0 OllC 0 011D 0 011E 0 OllF 0 0120 0 0121 01 0123 0 0124 0 . 0125 01 0127 30 0129 0 012A 0 0128 00 0120 01 012F 01 0131 0 0132 0 01330 0001 C039. l~C200124 176558Fl 0000 70FD 6A06 62(3 C015 D279 7201 MDX STX 40'+0 TEST3· 2 SAV2&1 - LDX LD STRBL STO 2 -61 SAV2 LDX 1/0 AREA 2 1 STRBL L2 MDX- * RESTORE XR2 L INBK NOTST S _sse L CALL LcD' ~JA CLEAR BLNKS 2 IOBUF&61 MDX MDX 70FD 66000123 7009 900D 4C28012D 09595100 CP07 3000 4C000038 7401014F 'tC800114 EE01 0079 .0 I 5 P L 1\ Y S LIMIT LINBK,&Z IOND - EEl CHECK-FOR LINE OVERFLOW OVERFLOW _ CLEAR INTERRUPTS AND WAIT WITH ERROR DISPLAY- IT SSC L LINBK MDX Bse ~ I 138_ ·EXIT OVERFLOW INCREMENT IOCHR,l NO LINE CHARACTER. POINTER EEl DC IEEOl LIMIT DC 121 MAXo NO~ OF CHARACTERSBLNKS DC 14040 BLANKS ~. . END OF L Ir'~E ROUT I ;\i-E -* IOFIL ROUTINEo ENTERS CHARACTER FROM ACCUMUCATOR IN FOR~ ooxxINTO IOSUF IN POSITION GIVEN BY IOCHR IOFIL BSS 1 * * 0~34 0135. '·0136 0.137 0138· 0139 013A 0138 013C 01.3E 0-13F Ollfl o1 L,2 0001 0 - 0015 0 C0180 1881 0 8015 0 D006 0 1091 O' C011 01 I~C02 013F 0 1808 01 E(f-OOO 1. 41 0 DOOA 0 C008 STO LD SRT ... HOLD A STO IOADD AND&l IOCHR 1 CALCULATE ADDRESS TO STORE - CHAHAC TEl~ SLT 17 MOVE REMAINDER INTO CARRY LD· L MASKL AN·D-, C IF CHARACTER L * BSC SRA AND- SAVE ACCU;"-1ULA. T OF< AND STO 'LD 8 TE~Pl HOLD ~Q. IS EVEN o .- til 0 V E f'vtA S K TOR I GH T S, IDE DELETE UNWANTED CHARACTER FRO~ DESTINATION wORD GtT CHARACTEi-<__ TO__INS[~~4L .. -_._._-_._------ --._._--_._------...- ... -..... --~~--- =.!.::.:-------------------,.:I ~.fi -22- p~~ I - Ol'-l3 01 4C020146 ·0145 0 1008 - --- O-lA-6 0 E805 0-147 01 [>i+800140 0149 01 4C80013 Lr oll~B 0001 014C 0001 o ll~D 0 FFOO 014E 0 -003C 014F 0001 - OR HOLD TEt-1P 1 MASKL IOADD IOCHR * .* * * -* 0001 0150 0151 01-52 - __ 0 1S 1+ 01-S-6 0157 .0 0 COFD 01 4C080162 00 C400003C 0 901F 01 4C200158 -0_t59 0 COlD 7003 DiSk 0 :0 l_5.8 __01 4(089165 015D 0 100a 015£:-0 E819 01-SF·O- 0173 0 DODB Oi74 01 '+C800150 0176 0 40FO 0171 0 ODOO·- 0178- 0-- 3000 o 0179 0 COD5 D03C 017A 0 017B 01 (4000074 017D 00 DI~000002 OR,C IF CHARACTER NO. IS EVEN 8 MOVE CHARACTER TO LEFT TEMpl COMBINE I AND&l STORE IN -DESTINATION wORD Bse I IOFIL RETURN ASS 1 B$S· .1 DC IFFOO DC lOBUF BSS l' CHARACIER IN LINE END OF IOFIL ROUTINE PRINT ROUTINE GETS CARRIAGE CONT~OL_CHARACTER AND SETS UPAPPROF~IATE S~IP P·RINTS LINEo RESETS CHARAtTER. POINTER I-F S TAr< T 0 F LIN &f T EST S P R I NT ERR EADY PR.INT BSS LD BSC LD SKIP DOOl 0160 20 176558F1 0161 1 0162 0162 20 f76558Fl oi63 0 0000 0164 0 70FD 0165 0 (OE9 0166 0 1801 G167" 00 D400003C 0169 01 4C200171 016B 0 eOA7 016C -00 D400003C 016E 0 CO(4 016F 00 D400003D 0171 20 176559E7 0172 0 1810 BSC SLA OR 5TO L 1 IOCHR TEST2,& IOBUF L S Bll NOT-START OF LINE CARRIAGE CONTROL CHARACTER···- BSC L LD MDX Bse L SLA OR STO LIBF Nur..~, Z SKP1 IT IS bEROt L WAIT -UNTIL SKIP-COMPLETE - 10000 PRINT LINE BLNKS - TES T FOR ZfRO vJC IF COUNT IS ZERO t-'lAKE COUNT 1 AND PUT BLANKS IN I03UF & 1 IOBUF&l PRNXX PRINT WITH OVERLAP ONE IOBUF STO- L P1CAL LIBF sse PRNTl TEST2 IOCHR 1 IOBUF P1CAL,Z LD SRA S TO ~LINE IT IS A CHANNEL NO SKIP -AS REQUIRtD * CNTRL pC TEST2 LISF DC MDX OUTLN LD SRA STO L Bse L LD STO L SKIP 1 SKIP OUTLN,& 8 CNTWD CNTRL PRNTl - 1"6 I -IOCHR PRINT Bll DC 140FO BLANK AND ALPHA ZERO SKPl DC 10000 CONTROL DIGIT fOR SKIP C NT 'I'D DC 1-3 000 CON TR0 l FUN CT I 6 N * . END OF PR1NT R0 UTI NE * ITYPE ROUTINE * CONVERTS INTEGER VARIABLE TO DECIMAL * TRANSFERS DIGIJS TO 1/0 BUFFER * IF FIELD_ WIDTH TOO SMALL, FILLS FIELD * wITH *~~* I TYPE LD STO LD STO L I.OCHR SAVCR FWIDE l ~ S A-V E PO SIT ION 0 FCHARACTER ~OINTER . MARK POSITION OF RIGHT END OF FIEL.Dt ALSO TLST ---,- 333-' - -:;.- - .~-- --.....• ,.".,,,._--_._.,,,,.... ,," ..•.,,,,....__.,,--,,.. ,.,,,.,,. -23PII' o1 -, F 0 1 0181 0 ------0182 0 0183-0 it 4 00 0 lil. 72FF 70FC COCB D033 0185 01 C4800111 0187 01 l~CI0018( 0189 0 1810 OlBA 01 9l{·800111 OlBC 0 . D02C 0180 0 (028 018E 0 1890 018{~ I LP 0 POSY DlVL FOR SUFFICIENT SPACE AVAILABLE IN LINE LD I BSC L 16 GET ABSOLUTE VALUE OF VARIABLE IF NEGATIVE,CHANGE SIGN VARAD VABS VABS DIVIDE BY 10 SRA S SiO LD SRT OR Fl (OBA BS 1 LD I OF I L IOCHR 9028 S 00B8 S TO MDX MDX LD Bse ONE2 I oeM/:< 74000189 0199 0 700E 019A 01 (4800111 019C 01 4(1001A(~ 019E 0 COBO 01 AO 01 i~C0801AB 01A2 0 01A3 0 01A4 0 01A5.0 01A6 01 01A8 0 01A9 01 01AS 01 o1-AD 00 OlAF 01 01 B1 0 _ C019 4090 0182 0 l}081 72FF 70FA (013 001\9 l~C000007 900E 4(30018D (4000074 D4000002 44000114 FILL FLP LD STO . BSl LD BSI MDX r-1DX L L L FWIDE 2 Q 01BF 01 C4000074 01(1 0 01(2 0 EOOl 70EA- 01(3 0 007F 01(4 0 10'00 Fl bc' De MINUS De- TEST FOR NEGATIVE VARIABLE SIG~ ENTER rv1! NUS SIGN RESET CHARACTER POINTER NEXT DIGITe TEST FOR SPACE AvAILABLE ,,! 0 SPA CE. F ILL FIE LD \\/ I TH LINE ASTER IOFIL 2 r,.l FLP BSC . L CALL TEN OlBE TEST FOR SPACE FOR DIVL,ooZ OlBA 0 0060 OOSC 0001 IoeHR SAVCR FILL,& MINUS IOFIL FEND IOCHR L CALL SAVCR ~ STORE MOVE CHARACTER POINTER LEFT TEST FOR ZERO QUOTIENT L SAveR BSS FEND BSS VABS. BSS CONVERT. REMAINDER TO EBCDIC VABS90 NEXTD VARAD RESET,- BSC 01B3 0 01 B'+ 0 01B5 01 4C000007 01B7 0001 01f}8 0001 0001 01B9 OOOA I L Bse L LD BSI RESET LD STO BSC NEXTD S COOB 0188 0 . OOFO' L ·LD S 9017 . .0 16 TEN VABS 16 0028 1090 E828 40;"0 01BD 0 I o A82A 01_90 0 0191 0 0192 0 0193 0 0194 0 0195 0 0196 0 0127 01 OlBC 0 VARAD POSV,'" STO SLT 018F 0 019F 0 BS I L L I NE MDX 2-1 MDX ILP LD IOCHR STO FEND 1 RIGHT END OF PREVo FIELD 1 1 ABSOLUTE 10 100FO 10060 1005C RIGHT END OF T~IS FIELD VALUE OF VARlp.f~LE CONVERTS DIGITS ·TO EBCDIC MINUS SIGN DC DC 1 'END Of ITYPE ROUTINE ** FETYP RouTINE '* FOR E TYPE. FILLS FIELD ",lITH .~*-::FETYP LD L FWIDE MASK OUT 0 PART OF SPEC~ AND NOD . JOIN NO SPACE BRANCH MDX FILL&2 NOD DC I007F * END OF FETYP ROUTINE PRNTZ NOP ._____ DUMMY ENTRY NDT USED~4._. ASTER . ONE2· o ------ -21~- 't PI 01C5 0 01C6 01C8 NO 70FE MDX OOOl~ *-2 ASS END 1 ERHORS IN ABOVE ASSEtvlBL Y c o o L-._ _ ._ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ __ -25II ASM *LIST SOURCE PROGRAM '* * 0000 176559E7 0000 o 1000 0001 01 (4000003 0003 o 0005 ·0004 20 l76558Fl 0005 o 2000 0006 o 003C 0007 1 ·OOOA 0008 01 -4COOOOOA OOOA 1 0008- 0008 01 4C80000A 603C PRNXX PRNXX PRINTS IN OVERLAPPED MODE THIS SUBROUT l"NE NOT OVERLAID DURING SOCALs LI8R ENTPRNXX NOP LD STO LIBF- L PRNTl DC 12000 DC IOBUF EN-DPG DC BACK BSC ENDPG DC Bse L I lOBUF EQU 000E ,END NO E-RRORS IN ABQV E *BA(Kf71 ~. *ENDPG IOO3e SKIP TO CHANNEL 1 IF END OF PAGE FORTRAN 1/0 BUFFER ASSEMBL Y. o o --26I I ASi"1 . ~·LIS·T a QQ 09595100 0000 0001 0001 00 7'+000.032 ·0003 0 70FD 0004 01 l.C8000-00 0006 ENT *CALL IOND *CALL laND IOND _ SUBROUTINE NAME NO PARAMETERS ALLOWS 1/0 OPERAfIONS TO [ND PAUSE OR ·STOP IS ENTERED - 'IOND * BSS IOPND MDX MDX BACK Bse 1 L END . \ ~; --------~------~~--------------~--------·~l _ 50~0 IOPND IO'ID - ARGUi'vlENT BEFO~E ADDf~ESS ANY INTERRUPTS PENDING I DEAL /t8,1' IDEAL488 IDEAL48C . I DEAL48 D A IDEAt..48E I [}EAL'~8 F I DEALl~8 G ID[ALl~8H _IDEALlir 8 I IDEAL49 I DE!,LLt9 A NO ERRORS IN. ABOVE ASSEMBlYG o o S37 THE 51: .. -27-.4--------..------------.;....--w~-S-P-1-2-8-24-l' /1 "lOB T // FOR .** SAMPLE PROBLEM 2 CSP10° *IOCStl132 PRINTER) *LIST ALL * * * NAME .SMPL2· ONE WORD INTEGERS EXTENDED PRECISION ( DEMONSTRATE USE OF OVERLAPPED PR1NT SUBROUTINE C THIS PROGRAM IS IDENTICAL TO COMMERI(\L SUBROUTINE PACKAGE ( SAMPLE PROGRAM NOe 2 C NOT E I NPUT OAT A CARDS CSP 13 96 o· 'TO CS P l'L~030 ARE NOT REQU It~ED C--ab--THE INPUT IS ~1ADE uP OF A ~1AsTEr~ (t\RD FOLLO~\/~D BY THE THANSACTION C-----CARDS FOR EACH CUSTOMER. WE WANT TO PRINT AN INVOICE AND PRINT A C-----NEW MASTER CARD FOR EACH CUStOMERe DI ME N S ION INC RD( C3 2 ) , I PRNT ( 6) , lOT CD ( 80) f 1ST 0 P ( 5 ) f I ~J t<. ( 1 3 ) , I S Urvl ( 8 ) , lIEROR(6) READ(99,lOl): ISTOP 101 FORMAT(II 5 T 0 PI)' READ(99.106) IEROR 106 FORMAT(IE R R 0 R ,). J=2" 1=0 ° L=O M=O CALL READ(INCRD,l,80,J) I F ( J-l ) 22 •.2 ,2 2 IF(NCOMP(I~CRD,1,5,ISTOPtl) 3 (ALL NlONE(INCRD,7Q,5,K) IF(K-l) 26,4,26 CSP12880 CSP12890 CSP12900 CSP13010 CSP13020 CSP13030 CSP130 l +0 CSP13050 CSP13060 CSP13070 INC RD( 8 1 ) :: 16 4 {~ 8 I NC RD( 82 ) :: 5 L~4 1. CSP 12 8 /+0 CSPJ.2850 CSPl"2860 CSP1~O CSPl~~O (SP13100 CSP13110 3,22,3 4 WRITE(3,102) (INCRD(II),II=1,60) 102 FOR~-1AT('1·',20A1/(1 ',20Al» REA D ( 9 9 , i 0 3) 10 3 FORMAT ( I I 'tJ K t $ • CRt) CALL EDIT(INCRDs61,68,I0K,1,13) WRI TE ( 3 , 10 4) I 'Ii K 104 FORMAT(///lOX,'QTyl.10X,'NAME',46X,'AMT ' /23X,JPREVIOUS BALANCEI. 1 2 8 X, .1 3 A1 .) 40 5 6 7 8 9 LJNES=8 CAL L ··A 1 DEC ( INC RP, 6 1 ,6 8 , L ) IF(L) 5,5,23 .. CSP13250 CSP13260 CSP13270 CSP13280 CSP13290 CSP13300 CSP13310 CSP1-332J (S'P13330 CSPl-3340 CAL L M0 VE ( INC RD, 6 1-, 68 tIS U~~ , 1 ) CALL MOVECINCRD,lsgO.IOTCD,l) CALL READ(INCRD,l,aO,J) I F ( J-l ) 22, 7 , 7 CALL NlONE(INCRD,70,5,K) IF(K-l) 18,19~8 IF(K-2} 18,9,18 IF{NCOMP(INCRD,1,20,IOTCD,1» 18,10,18 10 READ(99t110) IPRNT 110 fORMAT(' • 0') _ CALL EDIT(INCRD,49,52,IPRNT,1,6) REA D ( 9 9 , 1 0 3) n~ K ·0 - CALL EDIT(INCRD,41,48,IWK,1,13) IF(LINES-55) 31,31,17 3 1 \AJ RI T E ( 3 , 1. 0 ~ ) I P RNT. ( INC RD( I I ) , I I :-; 21 , iI- 0 ) , I 'd K 105 FORMAT(7X,6Al,lQX,20Al,24X,13Al) LINES=LINES+l ,---------------------- 5'3'~ ---------_._-- -----------.......;.--__ ~~ . - ...... --.-~~ ..... - ........ __ . .. -.. --- --- -- --- - ror'· .:-- -} ....·. rwtr ""TT"·"'''"%, 'flo BffeMiHitM -----------------------------------~---------- -2'1- SAMPLE- PROBLEM 2 PAGE 02 CALL AIDEC(INCRDp4lt48,L) IF (L) 1 2 , 12 s-1 t. CALL' ADD( INCRDt41 ,48, ISUM~ 1_, 8 t~)- CSP134-30 CSP1341.1·O CSP 13L~SO CSPl.3460 CSP13470 - . CSPJ.3 Lt80 CSP13490 CSP13500 CSP13510 1 F( M ) 13 , 6 t 13 CALl. 10NQ- 13 STOP 777 CALL NZONE(INCRD,L,4,Nl) Nl=O 14 CALL AIDEC(INCRD~LJL,Nl) IFCNl) 16~16,15 CALL 10ND STOP '-666 16 CALL DECA1(INCRD,41,48,L) L=O . GO TO---11 17 \~RfTE(3tl09) _ 109 FORMAT(' l ' ,9X', 'GTY' ,lOX, 'NAME' ,46X, LINES::1 GO TO 31 _ 18 CAL L T YPER ( I E RO Ri 1 -, 5 ) CSP13520 15 CALL -(;.Sp13 530 CSP 13~LrO CSP13-S50 CSP13S60 CSP 135-70 'AMT') CSP13620 TYPER(INCRD~lJ'32) CSP13630 GO TO 6 CALL DECA1(ISUMjl,8,L) JF(L) 20,21,20 CAL L IOND - _ __ _ _ STOP 555 -- 19 20 " t"dtfe(thttt" ... · 'I.' CSP1364-0 CSP13650 CSP13660 CSP13670 CSP13680 ~,\1 REA D ( 9 9 , 1 0 3) IvJ K --CAL lED I T ( -I SUM, I ; 8",-n", K , 1 t 1 3 ) V CALL MOVE(ISUM,1,g,IOTCD,61) CALL TYPER(IOTCD,1,80) 107 ~J R I T E ( 3 , 1 0 7 ) H-} K FORMAT(1123X,'TOTALf,39X,13A1) CALL fYPER(INCRD,a~,82) GO "0-1 22 READ(99,1081 IWK 108 FORMAT( 'E N-D. 0 FCAL L TYPER (" I l.A:i< 9 -1 , 1 0 ) ~.O B f) CALL IONDSTOP 111_ , 23 25 NZQNE ( I NeRD, L, 4, NJ. ) N1=0 CALL AIDEC(INCRD-,L,_L,Nl) IFCN1) 2~,25,24 CSP13820 CALL _ LON()_ STOP 4'+4 _. CALLDECA1(INCRD,61968,L) -CSP13860 CALL CSP13830 CSP1~8lj·O CSP13850 CSP1387Q: CSP1388--Q CSP13e90 L=O- GO To 40 2·6 "CSP13900 CSP13910 - CALL' TYPERiIEROR,l,5) CALL fYPER(INCRD,1,82) _ GO TO -1 E'NO CSP13920 CSP13930 _ CSPI394-0 VAOABLE ALLOCAT·IO!\)S INCRD::OOSl" M 00<: B = IPR/~T;0057 IOTC-D:::OOA7 K II .:: 0 0 CD 102 =0107 =00 CC STATErvlENT ~ALLOCAT IONS 101 =QOFa 106 =OOFF ISTOP=OOAC LINES=OOCE 102 =0111 I vlK =0089 Nl . =OOCF ISUiVi =00 C1 IE ROR=oO-C \ 110 :::013E lUS :::01 L :53., THL .-. -------- -'-------------~' -~--~-----------.__::.c.;;.,;;'~;:-~-~ lS-Ar-.1PL~_OPRAOBL~.·M2 ~ - l-o-'-:- '=02l~3' 31=0265 19 =0200 20 =02E~21 1 5 ~01 SD .~ ~ =01C6 11 =0288 12 =02E8 22 4 =0102 '=0292 =0313 13 =0202 =029F 23 =0322 40 .~. 5 li; 24 r =020(· PA~E.-l 6 . =02A3 21.550,' . .... =0336 FEATURES SUPPORTED ONE WORD ~NTEG~RS -EXTENDED PREC~SION Ioes CALLED SUBPROGRAMS READ NCQMP' NZONE SFIO -'SIOAI 5-IOIX INTEGER CONSTANTS 99::'OOD2 - 2=00D3 60=OODC 48=OPE6 lO:::OOFO .61=00DD - 55=00E7-111=00F1 -EDl T SUBse- 16 '+48 =OODlt· 68:::'PODE 21=00E8 441.t·=00F2 CORE REQUIREMENTS-FOR SMPL2 ,COMMON 0 VARIABLES END OF 210 MOVE PRNTZ A1DEC S-TOP - 5440=00D5 13=o"oe F 40=00E9 1911=OOF3 PROGRAM ADD IOND 0;-00D68=OOEO 777=OOEA f638=OOF4 -- DECAl - 1=00D7 20=00E1 4=00EB 1365=OOFS TYPEr-< 80 l~ 9 666 273 640 COMPILATION -0 s~o '~~--------------------.-----------~-----~------------~~-----------. ;l 1/ XEQ R 47 OB4E (HEX) WORDS AVAILABLE CALL TRANSFER VECTOR CARRY NSIGN FILL TYPER DECAl IOND ADD MOVE AlDEC EDIT 1123 1007 1082 OC05 08-5 A . OB3E OA7E OA40 09D2 08AF . NlONE- NCOMP READ 07FD 07AF 0750 lIBF- TRANSFER VECTOR 13AE 135 E 130 E HOll o . PRTY EBPA TYPEO EBPRT RPACK SUBIN ARGS SWING SPEED CAROl PRNXX PRNTl STOP SCOMP SIOIX SUBSC l1E6 1180 1050 1090 1022 106F OE06 ODEO 00D2 0(50 0 087C 05A9 053A SWRT. SIOAI SRED 058A' ESTO 06EO ElO- 06F6 PRNTZ SFIO D I SKZ o ILS04 I LS02. ILSOl ILSOO 0338 oBAl; 0547 0533 (HEX) 06D8 -0'0514 0 OOF4 1401 141D 142F 1441 IS THE EXECUTION AODR6l ___--------_--.---_.....,....._-.--~~-- Tr ~¥I ----------- ------- DAVESMARKE"T 1 997 \-JAS HI NG TON S T" . NEWTOWN. MASSa 02158 .···0 QTY NAME PREV IOUS' BAl.ANC E 8 11 10 8 . 6· 17 . 17 . 17 17 -' 17 17 .25 25 10 .10 - 12 12 12 12 12 12 1.000 4.000 ·200 100 5-() 100 '100 100 10 -12 12 12 12 12 12 1,000 ~ A.,OPO 200 50 100 100 100 100 10. 12 1,000 4',000 SUGAR .", BAGS ~HICKtN SOUP - CASES TOMATO SOUP - CASES SUGAR RETURNED COOKlES -'CASES GINGER ALE - CASES ROOT BEER - CASES ORANGE ADE ~ CASES CREME SODA - CASES CHERRY SODA - CASES SODA WATER - CASES DOG FOOD ... CASES CAT FOOt) - CASES SOAP ~OWDER - CASES DETERGENT - CASES HAM - TINS HAr·1 - LOAF . SALAr-11 BOLOGNA CORNED DEEF ROAST 8EEF BREAD - LOAF ROLLS MILK - QU~,RTS MILK - HALF GALS MILK" GALS POTATOES --BAGS TOMATOES - LOOSE CARROTS - BUNCHES DETERGENT - CASES HA~~ - TINS HA~1 - LOAFSALAr-lI BOLOGNA CORNED BEEF ROAST BEEF BREAD - LOAF ROLL~ MILK'" QUARTS MILK' .. GALS MILK - HALF GALS POTATOES - BAGS TOMATOES - LOOSE· CARROTS - BUNCHES DET~RGENT - CASES HA~w1 - TIKS' BREAD - LOAF ROLLS' AMT - $111.29' $-21002 $38a76 $30.11 $210 02CR '. $45(121 $52037'- $52037 $52.37 $52c37 $52037 $.52037 $101026 $101.26 $72.89 $72.89 $36.75 $33.75 $33.75 $33.75 $33.75 $33075 $150.00 $150.0~i $57.4~ $57.42 $57 ~lr2 $11.23 $11.23 $11.23 $72089 $3.6075 $33.7.5 $33.75 $331_75 $33075 $33.7"5 $150.00 $150.00 $57042 $57 a'. 2 $57.42 $11 c 23' $110'23 $11e23 $72089 $36.75 $150000 $150000 ··C . II·) --_. --.~..----- . .. "-'-._---_....... --..~., Qry 200 100 50 . 100 100 100 10. 1-·2 12 12 12 12 12 f,ooo 4.000 200 _ 100 100 100 100 100 10 12 '-------:-------. ~ . NAME (\1ILK - QUARTS MIL K HALF G/,LS MILK GALS POTATOES - BAGS rOr-1ATOES .,.. LQOSE CARROTS - BUNCHES DETERGENT - CASES HA~1 - TINS HAM'- LOAF SALA\11 BOLOGNA CORNED BEEF ROAST BEEF BREAD ... LOAF ROLLS MILK QUARTS NO fVLl L K •• HALF- GAL 5 MILK'" HALF GALS POTATOES'" BAGS TO~·1ATOES tl> CARROTS DETERGE~T HA~1 - T l-NS LaOS E BU~CHES ~ CASES - AMT ~ .; $57.1+2 $57042 $57 ~42. $11.023 $11023 $11023 $72089 $·36 () 75 $33c75 $33,675 $33(175 $336)75 ·$33075 $150'000 $150000 $ 5 -, () '~2 $5704? $57,,4·2 $11e23 $11~23' $11023 '$72.89 $36075 TOTAL c ._ _ _ _ _ _.________--:-:=:__ 5-'1',3 1. __ ~ "_C"~"-:~"'.:T"~ STANDISH MOTORS 10.WATER STREET PL¥.¥lOOTHt MASS.02296 1 t·' . . ,4 I r~·. ~/- aTY 20 . 6 20 50 50 100 .. NAME PREVIOUS BALANCE AIR C(EANERS - CASES GREASE BARRELS TIRES 650 X 13 TIRES 150 X 14. TIRES 800 X 14 GASOLINE CAPS AMT $2,356036 $200 (l03. - $1650 2l~ $260.038 - ·$90.0053 $1,-·012000 $99.68 TOTAL ~--~-~---------- __.__£ J..jJ..j _TI .1 o ~~ . w·GJ 1130 COMMERCIAL SUBROUTINES ~--------- ABSTRACT: Version II of the IBM 1130 Commercial Subroutines will be the primary emphasis of this session. - The general problem of commercial programming in pure FORTRAN and the history of partial solutions available at this date will be discussed. Version II of 1130 CSP will be compar~d to Version I and other available commercial routines. Performance in execution time and core requirements as well as current limitations will b~ presented. ," , -----_._---- , ------- I: ,. G: -. . -~------ ... --~~.---------~----.---.--- ... c/~· ~ ------·--------by s. F. ----- --.-. __------- Seroussi Thomas J. Watson . Research Center P. O. Box 218 Yorkto\vn Hts •• N. Y. A series- of programs has been \vritten to-al1ow-180.0. user s to fully utilize the capabilities of the mM 2841- 2311 disk storage system within the frame \vork of the Time-Sharing Executive -- TSX, Version.3, Mod 1. A comparison is made between the 2311 and the 2310 disks in programming techniques arid timing. o Physical Characteristics 2310 Capacrtr - Oxide coated disk with 200 primary, 3 alternate 2 track cylinder s capable of storing 521, 304 16 bit words (1,042, 304 bytes) of which about 5I2K words are available to the user the rest being used as alternates to defective tracks. Each track is divided into four sectors. A sector is the basic . addressable unit \vith a capacity of 321 v/ords one of which is usually used for sector addressing and error checkout. o Titning - The disk rotates a revolution taking 40 ms. a~ a speed of 1500 rpm; Word transfer rate is 36 K words/ sec. l Cylinder to cylinder access' is 15 ms in single steps or 20 for double cylinder steps and a delay of 20 ms must be added to allow the carriage to stabilize itself. Average access time 530 ms. Bet"',veen sectors the shortest time available is 235!lsec (plus 27~sec for each word not used). As an exarnple, if we write 310 v/ords in a s ector and then continue to ·\-vrite on the next sectors the delay betvveen writes will be a minimum of 235 + 27 x 11 or over half a millisecond. 1 Programming - The following hard\va~ (rr..achine o languaJ e) operations are available: 1 11odt1s AI, A2, and A3 .. SJ./7 z. , CE Mode READ TO MEMORY READ - CHECK INITIALIZE ·READINITIALIZE WRITE CONTROL (SEEK FORWARD OR BACKWARD) SENSE These operations must be executed one at a time with no chaining allowed and ,vith several restrictions imposed such as the need for a 20 millisecond delay between seeks or an error will result. Only ~ sector can be processed per I/O c0-mmand. Interrupts - Sensing the DSW for each disk unit provides the user with a series of indicators. The occurrence of an Operation Complete, causes an interrupt in the 1800. o All other indicators 'Nill only be detected tog ether \vith Operation Complete. Data Status Word Bit o 1 2 3 4 5 6 7 8 9 10 11 12 13 14-15 Interrupt Any Error OperatiQn Complete Disk Not Ready Disk Busy Carriag e Horne Parity Check Error Storage Protect Error Data Error Write Select Error Data Overrun Not Used CE Not Ready CE Busy Not Used Sector Count o \ 3. Two or znore indicators '\vill be on when an interrupt occurs. Number of Drives Per System- Standard up to three. RPQ three mo~e. Typical I/O Comznand: IOCCI o XIO IOCCI "DC TABLE DATA TABLE DC 14DOI WRITE ON DRIVE 1, SECTOR 1 321 COUNT TABLE DC BSS 321 A previous XIO would have moved the arm to the proper cylinder. o 4. 2311 Capacity - 12 oxide coat~d disks with the ten inside surfaces used :for recording data up to 7. 5 million 8 bit bytes. A pack is divided into 200 primary, three alternate cylinders and ten tracks (one for each recording surface) of 3694 words each. Each track can be subdivided into records of variable length as defined by the user. The home address . which identifies the track and the first record on the track, RO , usually used to define the condition of the track (and its alternate if needed), are generated with special IDM provided programs with a standard format. A track would have the () follo\ving configuration: 2311 Track Format Each of the above areas contains the follo\ving in.formation: Index Home Marker Address Oato Record R I Home Address 0\ 5S0 5. o Home Ad~ress Flag Byte: The flag byte in the home address is transferred automatically to the using system by perforrn.ing a read home addres s operation on the track. The bit significance is: lit Function or Setting o Zero Zero Flag Byte 2 Zero 3 Zero 4 Zero S Zero 6 Track Condition o indicotes operative track 7 Track Use o indicates primary track ;,.. 1 indicotes defective track 1 indicates alternate track Flag: Byte 0 of the count area is generated by the 2841 as each record i~ '\vritten. o It is not sent from the CPU. Bit 7=1 indicates an alternate track. Bit o Function 0 for even-count records (RO I R2, R4, Rt/ 1 for odd-count records (Rl , R3, RS····) Used by the 2841 to ensure that all address markers (and records) ore present. The 2841 signals a missing address marker when two consecutive, identical bits are encountered (unless on index point intervenes). Used only with record overflow feature. o for all non-overflow records and for the Flog last segment of an overflow record. Byte 1 for each segment, except for the lad segment of on overflow record. 2 Zero 3 Zero 4 Zero S 6 Track condition 7 Track Use Zero 0 indicates operative trock 1 indicates defective track o Indicates primary track 1 Indicates a hemat. track Bits 6 and 7 are transmitted to the flog bytes of a II records on the treck from the flog byte ,.r the Home Addr~ss of thot track by the 2841 • SSt ------_.... _---... -._•.. _--_ __ ..•.._....... .•....... _....".".----,..._,.. '''.''-.'''.-~--.".--~~~~~------~---------~------------ 6 •. 5 6 __------________ ~-------------------y -J Coont Area index Key Area Data Area HA ~~~~~______~_______R_l______~________~ rn ~ ~ Address Marker Address Marker • May Not be Present Record RI - Rn Format o Storage Track Copocity in Bytes When RO is Used as Units 23tr Oo~o When RO is ~sed for Sp'!cifj~d Applicotion Data By IRM Programmi"9 Systems. 3625 Records (except for lost record) Without Key 61 + 537 512 °L 3694 Number of Bytes per Record when (KL = Key Le.1 g th.) DL = Dotu L~ngth Lost Record Bytes Required by Data Records Track Capacity With Key Without Key 81 + 537 (K + D ) l L 512 .D .with Key 20 + (K l + Dl ) L Number of Equal Length Records Per 2311 Track Record RO vsed as specifIed by IBM Progrommin.l Systems. I 2 3 4 5 6 7 8 9 10 II 12 13 Without Ke)' 3625 1740 1131 830 651 532 447 384 334 295 263 236 213 W' h K ~ I neTudes key bytes + .t ey t doto bytes - I<'L + DL 3605 1720 1111 811 512 428 315 275 244 632 364 14 15 i?3 177 162 149 16 17 18 19 20 138 127 li8 2'7 194 174 158 143 130 119 loa 99 Record gaps are of a length determined by the size of the record. Track capacity then, varies with record length as shown in the above figure. Timing - The disk rotates at 2400 rpm with a revolution time of 25 ms. Access time fron1 cylinder to adjacent o 7. o cylinder is 25 ms; maximum access time (from cylinder 000 to 200) is 135 ms and average time for' a random access ~s Once the cylinder is accessed, an average of 12.5 ms 75 ms. is needed to reach the desired record. No delay is encountered in going from track to track because the access mechanism includes one read/write head per track. Progranlming - A series of commands each taking 3 1800 words, are available to the user which allow for manipulation of both the control unit and the 2311 drives. o These commands can be classified mto four groups as recognized by the selector Output Forward (Write, Control) channel: Input Forward (Read, Sense) Branchi...'1.g (Transfer in Channel) Test I/O There are forty possible command codes(l) SOIne of which allow the user to operate on any of the elements contained in a track or in a whole cylinder. cylinder boundaries. There is no capability to cross This has to be programmed for and is very simple. Interrupts - Before considering the interrupt capabilities o of the 2841-2311 system let us look at a simple diagram of one of these devices connected to an 1800. 1. See Appendix I, pp L.2 for table of comrnands SS3 -~ ----- ... .......-.- ....- ............ -r ---.-.~~-- 8. 1 I 1800 1826-M2 Selector Channel REQIN" ~R_E--..;;:Q__O.;...U..-.;.;T__""j')8 41 2311 2311 From this diagram, it is evident that there are two interfaces of importance; (1) Selector Channell Control Unit (2841) and (2) Control UnitlIIO Devices (2311). o Selector Channell Control Unit (a) If more than one control unit is attached to the selector channel, SENSE ILSW will deternline 'which one of them has interrupted. The machine configuration under consideration has one control unit so there is no need to execute this instruction. . (b) To determine the status of the selector channe.1, a SENSE CHANNEL STATUS \VORD can be executed. similar step to sensing DSW on the 2310. It is a It provides the pro- grammer with the following information in the accumulator: BIT o STATUS MEANlliG' o Not Operational Device Addressed not ready or not connect ed 1 Unit Status Pending Control.Unit and Device Status Waiting for Further Action 2 Program. Control Interrupt .Requested by Programmer 3 Program Check Bad Parity on IOCC - Request Out of Bounds 4 Data Check Parity Error - Write to Protected Ar ea 5 Interface Check Hard\vare Error 6 Incorrect Length Requested Length and Length in Disk Unequal 7 Channel Busy Busy - Do not Request Another I/O or Card Check will Occur 8 Unit Operational Unit Up - Actually In Use The fir st four conditions generate an interrupt. Further information can be obtained from the status of the control unit and devices. Control Unit/ Devices Up to eight 23lls can be attached to a single control Wlit. To obtain their status, a SENSE UNIT STATUS can be executed. If Unit STATUS PENDING occurred, it is necessary to do this sense in order to clear the interrupt. The 16 bits 10. 0 of information placed in the accunlulator are: BITS STATUS MEANING 0-3 Address of Control Unit 4 - 7 Device Address (0 - 7) 8 Attention Not Used 9 Status Modifie,r With 11, Control Unit Busy 10 Control Unit End Control Unit Available 11 Busy With 9 12 Channel End (GEl ) Indicate Status 13 Device ,End (DE) Of Operation 14 Unit Check Error 15 End Exception End of File Detected (A Record with Zero Count) The above bits can be on in s everal the operation in progress. C; com~inations depending upon In general, CE - DE together and alone, indicate a successful end of operation. the other hand, indicates an error. Unit Check on Three more sense operations are available to assist the programmer in determing the error source: (a) SENSE CCvV ADDRESS - will give the address plus three of the last commands used. (b) SEI'~SE BYTE COUNTER - will give the residual 0' byte count. (c) SENSE BYTES - will transfer six bytes of informa- tion concerning the unit check from the 2341 to the CPU at ~1'l 1 n le:r'Y '111 o address specified by the user. The first two bytes contain most of the needed information as shown below: DesignatIon Significance of "I" Trock Overrun Indicates thot writing has not been completed by the time the index point is detected. 2 Cylinder End Indicates that Cylinder End has been detected, but the CCW Command Chain has not been completed. ·3 Invalid Sequence Indicates that on attempt has bp.en made to execute on invalid sequence of CCWs or that two Set File Mask commands appear in the some command chain. Valid commpnd sequences are defined in the Write and Erase command descriptions. Command Reject (Byte 0 bit 0) is also set when on Invalid sequence is detected. 4 No Record Found Indicates that while executing a chain of CCWs the 2841 has d~tected two I ndex Points witholJt completing on intervening command to read or write or search the Data Area, Read Home Address, or Read RO. It is also set in conjunction with Missing Address Marker if there is na data on the track. No Record Found is never set if the Multi-Track bit in the command (8it 0) is on. No Record Found will be posted if the address marker in front of the last physical record on the track is not detected. 5 Fil. Indicates that a command was issued contrary to the file mask. The Comrr.and Reject oit is also set by this condition, if the operation violates the write portion of the file mcuk. Byte lit o o o Command Reject Intervent ion Indicates that the specified file is not physIcally Required attachcd to the system :;,r, if physi colly attached to the system, it Is not available for use because the file mator is not on, a cover interlock is open, etc. o 2 Bus Out Parity Check o 3 Equipment Check Indicates thot on unusual condition is detected in the control or storage unit. Conditions covered by this bit are defined by Sense 8yte 2 (See Appendix B). o 4 Data Check Indicates that a dota check error hos been detected in the inFormation received by the 2841 from the storage unit. o 5 Overrvn Indicates that a chained CCW was issued but It was received too late to be propP.riy executed; or that a byte was received too late (during ... ,;,~ operation) to be tronsferred properly; or the channel did not respand fast enough during a r~ad or s('arch. o Indicates that the 2841 has detected a parity error during the transier of a command or data from the channel to the 2841. A parity error detected during command transfer signals a Parity Check. Whon writing, the remaining portion of the record area Is filled with zeros and the overrun check is generated. When rcoding or searching, the remaining portion of the record is ignored. o 6 Trock Condition Checlc , ! o 7 o o Indicates that t~e 2841 has received an invalid operation code, on invalid sequence of commands, on invalid Seek AddreH. The write portion of the file mask hos been violatcd. (See Set File Mosk.) Seek Check Protected 6 Mhslng Address Morlcer A mining Addrt!u Marker, Which may indicate a missing rccord is dctected Juring the eKCCUtion of command or chain of commands whicf'l operates on successive Count Areas on a track. The condItion detected is two successive records on a track with equal bit conditions in bit 0 of the Flog bytes, with nl) interv~ning Index Point. MIssing Address Marker is set in coniu"ction with No Record Found if there is no doto on the track. 7 Overflow Incompl.te This bit is used with the Record Overflow special feature. It Is set with other Indicators to signal conditIons as follows: Indicates defective track. A Track Condition check is generated under the following conditions: t. If on overflow record is being reod, written, or searched which overflows to a defective track, the interrvpt occurs after the lost byte on the previous trac k has been operated on and before the first byte for the defective track is requestcd from or sent to the channel. In this case overflow incomplete Is also set. 2. If a single track command other thOR a Search HA, Read HA, or Read RO is executed on a defective track. 3. If a multiple track command or an overflow operatiOf'1 attempts to switch from on alternate or defective track after an operation has been executed. Indicates that the file has been unable to complete a Seek becl]use: 1. The Seek address is outside the valid address boundaries of the storage device. Unused seek address bytes must be a valid address for the device selected. Command Reject Is also set. 2. less than six seek address bytes were sent. Command Reject Is also $et. 3. The equipment foiled, which resulted In the access mechanism going to either the inner or outer stop. 1 Condition Sets Overflow Incomplete and Other Indication Overflow to a defective trock Track Condition (Byte 0, bit 6) Overflow from on . alternate track Track Condition (Byte 0, bit 6) Data check in data oreo of overflow record other than last segment. Data check (Byte 0, bit 4j Ove rflow to File Protected boundary File Protected (Byte 1, bit S) Overflow to wrong track (Head number unequol) Seek Check (Byte 0, bit 7) Data Check Indicates that cyclic check error has been dein the Count tected in a Count Area read from the storage FifJid device. Data check (bit 4) II' byte 0 Is also turned on. Sense Bytes 0 and 1 SS7 12. o ,- TyPical I/O Command: SIO CCW SEEK READ HOME ADDRESS; CYL 180-HEAD 8 XIO SIO START I/O DC CCW START I/O - IOCe DC "/9502 AREA CODE 18 - UNIT 2 A.L~D DC 5 SEEK DC /4007 FOR RECORD SPECll"'IED AT SEEI{ ADDRESS DC SEEK DC 6 READ HO}Y1E DC /OOlA ADDRESS INTO DC HOME THIS ADDRESS DC 0 DC 180 CYLINDER DC 8 HEAD HOME BSS 3 CHAIN "f"'\ ~; 13. Sofnvare The available software for the 2310 is well known to most users. In brief, there are programs to initialize the disk cartridges, test them for errors, label and define length of LET and FLET tables, and dump their contents when needed. Both FORTRAN and ASSEMBLY LANGUAGE routines are available to read and write to almost any area on the 2310 . disks. System routines will define and label at your request buffer areas and will assign sector addresses. All the user has to do is punch a define file card, or a STO REDAT A card c and the system will do the rest. Moreover, all of this is usually done with re-entrant subroutines enabling the user to. be free of worries about using a device from different interrupt levels. The only penalty paid, as the sample program vlill show, is time and overhead costs. All 2310 routines eventually call an I/O subroutine, DISKN which has been charg ed wi~h the responsibility of controlling all II 0 to the servicing the resulting interrupts. It should be noted that 2310 sand FORTRAN calls are not overlapped, 1. e., control is returned 'to the user after the operation has been completed successfully or not. o The software available for the 2311 as provided SS~ ·.-----............ ...... .. " , .. ~.,.- -~~~----------------~, 14. is restricted to diagnostic programs and a disk initialization program. TSX does not support the 2841-2311 but programs have been written "which allow the 1800 FORTRAN and ASSEMBLY LANGUAGE user to fully utilize the 2841-2311 capabilities.. These routines are at the present time being submitted as Type TV programs~l) Work in switching T SX to the 2311 is also being contemplated. The structure . of these routines is similar to those used to service the 23l0s but three differences must be mentioned: (1) The routines are not re- entrant. Given the speed of data transrnission, it is possible to rnask any interrupts while the 2311 routine is generating a chain of commands prior to executing the I/ O. The time delay is comparable to the time it would take to save and restore all needed parameters if made re-entrant. (2) The I/O can be overlapped. The return to the user is made irnmediately as soon as the I/O is initiated. The user has the option to examine the final interrupt to determine if the operation was successful o.r not or to ignore this fact 'comp1etely and continue with his program. (3) The different I/Os are requested through calling sequences.. There is no special WRITE or READ as L~ the 1. See Appendix II for further explanation and exarnplese M,~\ij;-;hi'i1" *,""wiri,Wfiitjfi ,. \Wrt' ftbttfttH#ii""#*#iNWWiTij'fj""' - TW"fWfrwr@MwtiV'.epw . !1PeRlr en ar 15. 2310, and most of the parameters in FORTRAN must be fixed integers. There are 10 calls that can be used to generate a sequence of in~structions that will perform a certain I/O on the ; 2311 and two auxiliary calls; one that allows the user to write his own command chain and the other a busy test routine. In machine language, a th-ird special call allows the user to get to a table of param~ters and indicators saved by the 2311 ISS. As in the case of the 2310, the 2311 calling sequences execute all I/ a through a subroutine, DISKZ. Having provided a brief sketch of the software available for both 2310 and 2311 disk storage devices, it is possible now to look at the programs run to obtain some timing comparisons. The philosophy used was very simple; write and read back a fixed length record to both disk units under similar conditions and record the lapsed time between start and finish. TIMING Time Routine 0 WRITE-READ I/O 2310 2311 • 3-22 sec. Language FORTRAN-TSX - TTh1El 3200 words 7.188 sec. TTh1E2 3200 words L 609 sec .. TIME3 3200 words • 192 sec. A.SM-TSX $TIM:E 320 words .262 sec. ASM-ABS TIME4 320 words .. 918 sec. ASM-TSX ASM-ABS 16 It should be pointed out that a data area for use of all the se routines was set up in FLET and '\lnprotected by means of DWRAD. This time was not included in the co:mputationso Also J the time shown for $TIME doe s not corre spond to a single write of 320 words but to five repeated attempts to write the same record. T:his was caused by an error in one of the routine s used and show s the timing effect of retrying a'n operation that failed with a recoverable error (in this case unrecove rable). It is evident that the use of FORTRAN for disk I/O instead of Assembly Language is costly for the 231 o but that in the ca se of the 2311 storage device s, at the pre sent time, the difference is quite tolerableo o I~ '<) PHYSICAL CHARACTERISTICS 2310 1. 02 2311 STORAGE CAPACITY (MILLION BYTES) 7.5 530.00 HIGH SPEED ACCESSIBILITY (milliseconds average) ·72.00 DATA TRANSFER (KILO BYTES) 3 75.0 156.0 MULTIPLE UNIT GROWTH 8 ~ ....~ 203 Cl Z NUMBER OF CYLINDERS 20.3 10 ~ 2 NUMBER OF TRACKS/ CYLINDER < 5. 1 CYLINDER CAPACITY (TIIOUSAND BYTES) At At SECTOR 640 r-4 • ~ 37.0 BASIC ADDRESSABLE UNIT RECORD MAXDAUM CAPACITY OF BASIC UNIT (BYTES) 3900 r-4 ....• o o ~ ~ ......... ·0 APPENDIX II 110 1 The 2841 and 2311 Subroutine Package The 2841-2311 subroutine 5 were written to allow FORTRAN and/or Assembly Language users to avail themselves of the se high speed storage device s. The aim. wa s to or ganize the routine s of the 2310 support programs. To accomplish along the line s this~ a set of three subprograms were developed: 1) The interrupt service subroutine (ISS), DISKZ, that ha.ndle s all I/O reque sts through its subroutine ~-"­ ~) entry point and take s care of all re sulting interrupts inforilling the user J if he care s to know, of the status of the last I/O executed. 2) Ten calling sequence s which operate upon all or any elernent of a record, track or cylinder (see Table I). 3. One additional subroutine with three entry points: (a) One entry point, DISIf prog:-ams in the inJ?ut -stream is defined by a JOB card. The automatlc loadlng and executlng of the next stacked program is initiated by anyone of the following: C) ·EXECUT' ON CONFIGURATION 0\ 6YM60l TAGLE J\ElOCA1A~LE ~U~~OVTJ"JE~ o ~~~~~~~ ftELCADfD ~REACH P~O(7RAM CO#\E ftEGtDENT 0, ', " Fig. 4 61/ . - - ._- - .EXECUTION CONFIGURATION STUDENT VEft:"CN • 5YMGOL TABLE RELOAOfO ...--------------FO~ EACH· P~C~~AM F'XfO 'ftELOCATABL£ ' SUGttOUTtNES o Fig. 5 -- --- -~~ - - - - - - - - ---- ---- - ----- - --- -----.-- -- ...... -.-... -.----.-.--~----- 1 o 1. Execution of a CALL LINK or CALL EXIT statement: These statements functionally terminate a FORTRAN program,,The primary difference between the s,tatements is conceptual. CALL EXIT terminates a job and CALL LINK is used together with COMMON to link overlay phases of ~ program. The overlay of a program can be profitably used to- conserve core in large programs. For example, all program variables can be put in COMMON and initialized in a phase which is then_ overlaid by the main program. Figure 6 illustrates the source deck arrangement for this example. 2. Readin~ of a JOB card: An attempted READ of a JOB card by the FORTRAN program will be treated as an end-of-file condition for the input to the program. This will cause the monitor to branch to the specified statement if an ON ENDFILE statement is used or to terminate the job and cause loading of the next program. The ON ENDFILE statement is described later. c 3. Execution of an END statement: For those who forget a CALL EXIT. 4. An ,Input Data Error An input error will be considered a job terminating error-unless an ON DATA ERROR statement is used. This statement is further described under the FORTRAN compiler. 5. A Console IInterruptl: Pressing INSTANT STOP, RESET, INSERT, RELEASE, and START at any time during execution will cause the current job to be aborted and the next program found and loaded. 6. Lin€ Count or Times Overflow: These will be described below. A· separate termination message is typed by the monitor for each of these end-of-job conditions.' The JOB card is also typed £:or each job. ~/3 - ------. . ·~-······1 i 'EXAMPLE OF- CALL LINK ENO CALL £~lr - COMC'1CN A,0, ••• ....--...... $"00 '~J'1~AltZAr'Of'J cCMMOru A,S, ... $'-'00 I---o-' o. ",,'!!':mt'lIf'ij'NU""lf'lP'""trliT o The PDQ system has two major drawbacks, however. Source language error detection is minimal, and is unsatisfactory for use in a teaching system. In addition, the subroutines must be separately loaded with each object deck. This constant loading becomes quite expensive when a large number of short programs_are to be run. TheC.S.C.H. FORTRAN maintains the speed and language attributes of PDQ while reducing these disadvantages. The three principal components of the system are 1. FORTRAN Precompiler . Since the. level of error detection r-equired could not be provided in the compiler, a separate precQmpiler was written which provides a high level of-error detection. The total time -- both student and machipe -- required to produce a working program is greatly reduced in this manner, since the previous compile-execute-debug phas~necessary to find one error is replaced with a precompiler phase which detects multiple errors. - 2. o FORTRAN Compiler Some additional features have been added to the PDQ language and some modification and deletion of existing statements made. statements have been included that provide communication with the batch processing execution monitor. Subroutines and Batch Processing Monitor A monitor has been added to the subroutine library which allows batch execution with only one loading of the subroutines for any number of stacked execution jobs. Job card-control, FORTRAN calls to the moni~ori output line counts, program timing, program linking facilitie~, and continuous no-halt execution of programs are features provided by the monitor. Both_the compiler and precompiler operate in a batch processing mode under control of JOB cards. This means that any number of programs can pe processed to execution in three phaser~ ~i th only one -loading of the precompiler, compiler, and subroutines. The procedure is indicated in Figures 1, 2, and 3. The entire system is card oriented, and no typewriter input or- listing of source. statements is allowed. It is also possible to suppress type--writer output during execution (by using a monitor option). in order to achieve faster throughput. c 616 FORTRAN Compiler o The compiler is essentially the PDQ FORTRAN "compiler with the followirig mc:;>difiqations <;1esigned to'increase language and batch compiling capabili·ties: . 1. "The compiler has a batch compiling option which suppresses the halt between jobs. A card with eighty asterisks is punched following the trailer cards for an object deck. This permits easy separation of object decks when batch compiling with no stops. '2. A JOB control card must precede each source deck. The JOB control card will be recognized by-the compiler and typed to provide a record of'jobs. The JOB card also contains compile options that specify execution subroutine configuration. . 3. All source input to the compiler is from cards~ Also, no typed listing 'of the source deck or symbol table is allowed, although the symbol table can be punched alphamerically. 4. Subroutines cannot be compiled into the object deck. 5. Almost all error detection has been eliminated. A program with no precompiler errors will compile correctly, however. 6. The following statements have been added to the PDQ language: - a• CALL nnnnn where nnnnn is a five digit memory address. This generates a BTM instruction to the address specified. The operand is the return address to the-calling program. This statement _ is used for communication with assembly language subroutines. h. IF (SENSE LIGHT n) S1' S2 SENSE LIGHT n ON SENSE LIGHT n OFF where n is a single digit number and S1 and 52 are statement numbers. The IF statement is similar to the IF SENSE SWITCH statement except that i t tests an internal logical indicator. The test does not turn off the IIsenselightll. The other two statements ar~ use~ to set tbe ten indica~ors. Since the senselights -are internal indieators and require no core storage,their use will require less object code and symbol table space than the use of arithmetic variables as indicators .. , ( c. CHECKPOINT nnnn This statement is the same as the STOP statement except that the program does not halt after typing the s2ecified number. This has been found to pe-a useful-logic flow debugging aid without the slow execution typeout disadvantages-of TRACE. d.- ON ENDFILE GO TO Sl where Sl is a statement number. This stat~ment specifies_ the number of the statement to be executed when the last data card has been read. - This condition is defined by the last card indicator or the reading 0.£ a JOB card. The statement can be ,placed anywh,ere in the program but must be -executed before the end of file condition occurs. If this statement is missing, the reading of a JOB card will terminate the program and cause execution of the following stacked program. e. ON DATA ERROR GO TO Sl This is similar to the ON ENDFILE statement and specifies a program entry point if an input conversion error is de±ected. An input error will terminate the job if this statement does not precede the occurance of the error. o f. ' CALL EXIT and CALL LINK These are described under the batch processing monitor. The PAUSE and CONlROL statements have been deleted from the language and the syntax of Procedure Statements has been changed. FORTRAN precompiler The FORTRAN precompiler is a one pass error checking program which executes at approximately the same speed as the compiler. JOB card recognitio~ and batch processing capabilities are included. Some of the major features of the precompiler are 1. As far as is known, all non-logical checkstop errors are detected. Execution errors sUch-as a'calculated sUbscript going out of bounds.are, of course, undetected. 2. A large number of separate diagnostics (approximately eighty) are provided. Errors are identified by a two digit number which is typed out along with the statement containing the error. In addi1;.ion to controlling the initiation and termination of programs in a batch execution mode, the monitor, also provides optional monitor D " functions during the execution of a program,,_ The features provided ar' , 1. output-Line-Count Monitoring: The number of output lines allowed i,s specified- on the JOB card. If this limit is exceeded, the job is aborted. 2. Suppression of Typed Output: A TYPE or PRINT statement will execute as a PUNCH stat~ment. This results in considerable throughput increai:;e in a batch processing environment. JOB cards are_punched when encountered in order to easily-separate output when listing the cards from a series of jobs. Because of the construction of the JOB card, a 407 board maybe easily wired to cause ejection to a new page when a JOB card is encountered during listing. 3. Suppression of STOP statement: In order to maintain the no-stop, batch processing concept, the halt of a STOP statement may be suppressed. 4. Execution Time Monitoring: ~\ V Since the FORTRAN compiler produces very little in-line code and practically all operations are performed by a few basic execution subroutines, it is possible to provide software execution timing capabilities. This is done by placing code in fifteen basic subroutines which will increment a software timer by an amount proportional to the length of time required to execute that subroutine. ~his will increase the execution time 0 f such a subro"u tine by 240 l<"-: S if the time monitor is -disabled and by 1040/ls if the monitor is operative. The total increase in execution time has been found to be less than 3% if _the time feature is not used and approximately 15% if the timer is used. The software time count has been found to be accurate to within 10% of the actual t~me with one-tenth of a minute accuracy. The maximum time limit is specified on the JOB card and overflow is considered a terminal condition. The timer feature is primarilyused in closed-shop, batch processing operations where quite lengthy jobs are often run-. All of the above options are enabled or suppressed by sense switch settings when the subroutines are loaded. ( "1_! " - r ______ ~~ _ ________·__ ,,_··__ ··__ ·" ____ H_~_·_·· - o 3. Multiple errors in one statement can be detected. This reduces the number of precompil-er passes necessary to produce an error free program. 4. Error checking is to a higher level than is required by the compiler in order to produce valid code. For instance, . key words are generally identified by only one or two letters in the compiler but are checked for six letter-s in the p+,ecompiler. Some of the major errors detected are 1. Possibly undefined symbol Any variable which haa not been defined in a previous statement (in terms of card order, not logical flow) will be typed out as a possible undefined symbol When it is used. This procedure catches most undefined symbols. statement numbers which are - undefined at the end of the program will be typed out. o -·2. Branch to FORMAT statement 3. Duplicate statement Numbers 4. All DO Loop Errors These include overlapped DO loops, modification of-DO parameters within the loop, end of theloop i~ previous statement, etc. 5. AII-- Subscripting Errors These include contradictions involving the number of subscripts -en a variable and complete checking of subscript structure. 6. All FORMAT Errors 7. All Procedure Errors 8. -- I/O statement References non-FORMAT statement 9. Exponentiation -of Fixed Quantity IO~ All Syntax Errors: (misplaced commas, etc.) in-Other Statements In addition, some logical errors and some potential errors such as program possibly too large are detected. T1ie precompiler symbol table is the same size -as that of the compiler so-that compiler symbol table overflow conditions can be detected. - "';,.C from \ , __I The following special implementation restrictions exist but-, aside the firs~, they hav~ no practical implications in our environment: 1. -A FORMAT statement must precede the first I/O statement to reference it. 2. Maximums of three continuation cards, five negted DO's and five levels of exponentiation are allowed. 3. A maximum of twenty symbols can be undefined at any time. The important known flaws in the precompiler are 1. There is no way to detect all undefined symbols in a genera.l program. The likelihood of undeflned symbols at execution causing checkstops is reduced, however, because the monitor fills in the unused core with fixed point constants. This - produces invalid results in the case of an undefined symbol but preve-hts the subroutines from being destroyed by the Transmit Field instr~ction. 2. The appearance of a variable i~a DIMENSION statement causes that variable to be considered defined. 3. Arguments of functions are incompletely checked bu~ this will ~;. not produce checkstop errors. Mixed mode expressions in the argument will be det~cted. ~ ------------ ...... ~--....l • I~~~,~ " W' L.-. o ABsrRACT The following describes and addition to the programming system for the IBM 1800 computer. The expanded system will support up to 16 remote teletype terminals being used in a time-sharing environment primarily to solve realtime information processing problems. INI'RODUCTION 1800 Hardware The 1800 CPU makes extensive use of hardware interruyt levels and data channels to operate its standard data processing I/O equipment. In addition the 1800 can have analog and digital I/O capable of communicating directly with almost any kind of equipment. The terminal system uses 2 words of digital input and 1 word of digital output (16 bits/word) to control all 16 terminals simultaneously. No data channels or additional hardware are employed. TSX Programming System The 1800 programming S,ystem provides many conveniences. of two types, pr~cess and non-process. Programs are Process programs can be initiated by externally generated interrupts or can be queued by any pror-;ram for execution. They can be a part of the S,1stem skeleton which is in core at all times or they can be kept on disk in core-image form. Process programs have highest priority and generally use some analog or digital I/O. Non-process programs ordinarily do not use the process (analog and digital) I/O. They are usually stacked jobs of a conventional type to be run under the non-process monitor. When time-sharing, the system does the following: (1). Rursnon-process programs for background (job shop). (2). Periodically (3). Pern'.!i:tB externally or internally generated interrupts to load and execute process programs at any time. chec~the queue for process programs. Both (2) and (3) require that the non-process job be saved and restored when the process work is finished. The Terminal System The terminals extend the time-sharing capabilities of the system by allowing up to 16 users to communicate with the s.ystem simultaneously. 0··" I, Terminal activities \nc1ude: (1). Queing process programs for execution. .-.......... '.'-'.----.~--~- - 2 - (2). Communicating with programs during execution. (3) • Programming in NUtran (conversational fortran). _ ;i;' 'e"""",' Maqy other activities are planned. Most of the terminal system capabilities are achieved by simply making the standard TSX functions more accessible. The only programmin~ efforts unique to the terminal system are the communications controller (simulated by an in-skeleton program), and the time-slicing of terminal service programs. iI.M\NIOTES l,cc.:}·i:·j(;LOGY DEPT. Pl)i:~:.)Ut;~ i.iNIVEHSITY C f\ L \. )r·~ F T ~: t>. ~l P ! J S HAMMOND, IN 46323 r)r·j 'r'\i\) COMi:)UTi:f~ c


Source Exif Data:
File Type                       : PDF
File Type Extension             : pdf
MIME Type                       : application/pdf
PDF Version                     : 1.3
Linearized                      : No
XMP Toolkit                     : Adobe XMP Core 4.2.1-c043 52.372728, 2009/01/18-15:56:37
Create Date                     : 2014:03:05 14:51:40-08:00
Modify Date                     : 2014:03:05 14:26:36-08:00
Metadata Date                   : 2014:03:05 14:26:36-08:00
Producer                        : Adobe Acrobat 9.55 Paper Capture Plug-in
Format                          : application/pdf
Document ID                     : uuid:ad9a94dd-2b92-7e4c-8be4-d3233a2166f4
Instance ID                     : uuid:cd29de91-c4eb-7243-ac06-ded96bc64730
Page Layout                     : SinglePage
Page Mode                       : UseNone
Page Count                      : 624
EXIF Metadata provided by EXIF.tools

Navigation menu