Proceedings_COMMON_Meeting_Cincinnati_OH_196709 Proceedings COMMON Meeting Cincinnati OH 196709
Proceedings_COMMON_Meeting_Cincinnati_OH_196709 Proceedings_COMMON_Meeting_Cincinnati_OH_196709
User Manual: Proceedings_COMMON_Meeting_Cincinnati_OH_196709
Open the PDF directly: View PDF .
Page Count: 566
Download | |
Open PDF In Browser | View PDF |
PROCEEDINGS C OM~10f\' ME E T I NG C I f\lC INN AT I, nHI 0 SEPTEMBER 6-7-8, 1967 TARLE OF CONTENTS PAGE o. () • () F'''' 1. FRS ~'1 FF T I ~.I(; \/.1 • 1 • 1 GF f\1 F R. f\ L S F. S S I 01\1 It/ • 2 • 2 1. 1. 30 lJ S FRS ME E T I r--.J G \:') • ? • Lt- [. \,1 • 3.4 36 () USE R S [VI E E T I ~.J G r)~ 136() PROJECT tv1FFTI ~.!G \;../.2.6 1 1 3 0 I. I SE R S ~~ F E TIN G 1,·J.3 .2 ~YSTF.M ~FF~RENCF LIRRARY PAPER v.l.3.6 n~/360 COMMITTEE MFETING ~··I • 3 • 7 t,'J. 4. 1 J. A ? 0 lJ S F. R S M F F T I "I r, ] 130 It SF R S ME F: T I f\JG \../.4. ? D.n.s. PROJECT MFFTING 1,·/.4. itF n I. I C /\ TIn 1\1 P R () ,j E C T ME E T I r\1 C; 1".4.6 f' ·1T II SYSTF ~11 2 40 0 A. T,l\ RET R I EVAL SYSTEM \r. 4. 7 ~.I M F MR 2 15 16 17 18 19 29 30 31 32 33 34 f • T• 1 • 1 T. J • 2 T • 1 • '-'. T. 1.6 T. J.A T .l.A T. ? 1 T.2.3 T.2.4 T.2.5 0 T.2.5 T.2.5 LII[\IC~ T. 3. 1 T.3.2 T.3.3 T.3.4 T.3.4 T.3.6 T.4.1 T.4.2 o n I S K n./\ Tf\ STOR AGE R0 IJ T I f\J E I [) (") SRI nVFRL,t\PPFD 1/0 FOR. 1130 FORTRAI\I PRnGRAMS RFPOPT OF 360 HARDWARE COMMITTEE MEETING PF. R SO f\i N F= L S FLEe TIn [\1 A/\J 0 J 0 R nESC RIP T I 01\1 S Tn-SMALL INSTALLATIONS P R nGRAM r~ FRS E LEe TIn f\ 1 80 83 109 I 1\1 MEDIU M- 114 120 n R G /\ h.l T7. f', T I r) N A1\1 () S 1== L E CTIn N L I I PRF S t:: ~.! TAT I n 1\.1 R Y I 8. M 1\\ rJ fII\ J ~ 1,6 T I f',l G C0 rv1 MIT TF E ME E TIN G 122 1 36 13 7 IPMt::PG' FAST SORT-MERGE FOR 1130 PRO FES S I fJ ,\, ALP R0 GRA~1 MER S A~H) ANA. L Y STS - PRO B LEMS TN PERFORMANCE EVALUATION PROGRAMMFR E\lALI.JATTON PRO r-. R A tvl ~/1 F REV A L U A TIn N ADDRFSS BY MR. G.W. WOERNER, I.R.M. VICE PRESIDENT D.D.S. TIl OS/360 MEETING REPORT FORTR~N PROCESSOR FOR ORILLIMG TUBESHEETS ON N/C MACHINE CHEr--iT CAL ENG I NEE R. I 1\' GAP PL I CAT I 01\1 S 0 r; 'C S iV1 P , CUST0 ~'1 ER- I Rfv1 RELA. T ION SHIP HIT H RES PECT TO FE, S E , AND SALFS '360' OPERATOR TRAINING n P EI\I ROAR 0 ME ET I "IG Pl.. A1\1 ~·lJ NG S ES S JON FOR E0 UCAT I C)f\1 PRn J ECT 139 P 202 207 20 8 224 231 240 241 254 258 278 299 3 27 SESSION F.1.1 F. 1.2 F.l.4 F. 1.5 F.l.6 F.1.7 F.2.2 F.2.3 F.2.4 F.2.5 F.2.7 F.3.1 F.3.4 F.3.6 F.3.7 TOPIC '360-30/40' RPG FOR FUN g PROFIT REOUIREMENTS FOR THE PROGRAM LIBRARY A COORDINATED STUDENT DATA SYSTEM LABORATORY AUTOMATION BASED SYSTEMS FUTURE MEETINGS PROJECT REPORT '1620' PROGRAM FOR A.C. CIRCUIT ANALYSIS OBTAINING MAXIMUM RESULTS USING A COMPUTER FOR ENGINEERING DESIGN SUBROUTINE 'DATAR' AN EXPANDEO EDUCATIONAL COMPUTER SYSTEM-THE '1041' IRM PROGRAM LIBRARY PROCEDURES COMPATIBITY OPERATING SYSTEM MEETING REPORT STORAGE & RETRIEVAL OF PERMANENT 1620-1311 FILES 360 PROJECT MEETING COMPlJTER TIME STlJDY ANAL YSIS FOR WORK MEA SUR EMENT 05/360 COMMITTEE MEETING 1130 Af\.ID QUICKTRAN DEMONSTRATIONS PAGE 32,S 360 363 384 401 403 C 430 436 448 459 464 466 474 476 488 489 LIST OF REGISTRANTS - ALPHABETICAL ORDER BY LAST NAME 492 LIST OF REGISTRANTS - ALPHABETICAL ORDER BY CITY 525 c 0'" I~ II I" c SESSION NUMBER 0 SPEAKERS JIM STANSBURY LAURA AUSTIN CHARLES MAUDLIN DISCUSSION WELCOME TO NEW MEMBERS. EXPLANATION OF KINOS OF SESSIONS AVAILABLE. SUGGESTIONS OF SPECIFIC SESSIONS OF INTEREST TO NEW MEMBERS. DISCUSSION OF INFORMATION TO GIVE TO SECRETARY-TREASURER TO OFFICIALLY BECOME MEMBER. c o /, SESSION NUMBER W.l.! GENERAL SESSION SPEAKERS JAMES STANSBURY, PRESIDENT c C;' ',I,", - o IB.A.N S C RI PTI ON GENERAL ASSEMBLY COMMON, CINCINNATI, 6 SEPTEMBER, 1967 c o Page 1 JAMES STANSBURY r CHAIRMAN At Boston l I took off on the members enthusiastically, wildly, and with not too much result, but I can't preach to the people that attend today. We Ive tried to set up a meeting that meets the objectives and requirements that you people gave to us at Boston, and in conversation afterwards. Welre still making mistakes, but I think we've done far better than we did then. Hope you will enjoy it and benefit from it. lId like to say one thing about the interests of COMMON. live had numerous inquiries from people who aren It certain whether COMMON is what they want to join, or not. They would join GUIDE possibly; if they had a large machine, they might join SHARE. They aren It qualified for these on the basis of machines I so they say, fine I we'll join COMMON. The special groups in this organization are the ones you people want. If you people have a common interest then get together with a birds of a feather session, organize a project, and, if you convince the Executive Board that you are serious, you III get to be a proj ect. The people here are the only ones to make those projects run - make them beneficial. That's about all I intend to say. I'll start off here by introducing members of the Executive Board, then I intend to have each one of our Divisional Managers present a short description of what his division is doing. Jim Tunney has some corrections on the agenda and IBM has requested some time to make a short presentation, "it/hich they ,will think will be of interest to all members - a new hardware announcement. On my left over here is Dick Pratt, Executive Board Member next to him is N orman Goldman, Pres ident of the Eas tern Region. Paul Bickford, who was appointed to fill the vacancy created by Don Jardine's resignation. Bill Lane, Western Region President. On my right, Frank Maskiell, Executive Board Member I and on the far right, Chuck Maudlin, Secretary-Treasurer. Since Chuck is a rather ethical character 111m going to apologize for him. There have been a great many problems with communications with the Secretary-Treasurer - lack of installation support. He's changed installationsi he assures me that he has his backlog down now to a reasonable value, and that in the future we can expect reasonably prompt responses from him. Is Laura Austin I o Page 2 here? Jim Taylor? Weill start out with the Applications Division since we have the Division Manager present. FRANK MASKIELL I wasn It prepared to dissertate on the Applications Divisions. We have six proj ects in the Applications Division. First, I might state the objectives of the Applications Division. You all will have a chance to read them more accurately in the COMMON Reference Manual, which will be forthcoming shortly, I understand. In the Applications Division/, we are particularly concerned with problems of installations which are not particular machine problems. We Ire concerned with what you Ire doing on tlle machine, on the computer, not what computer you are using to accomplis h the res ults of thes e problems. To this end we have these six proj ects, specifically I they are the Techniques Project, which is concerned with mathematical packages, some statistical work. We have the Electric Utilities Project, what has operated in the pas t, particularly in the Eastern Region, as the Electric Utilities Team. We have the Petro-Chemical Engineering Project, hopefully serving the needs of installations in these industries. The Civil-Mechanical Project r who at this meeting I believe, will be meeting withsome of the members of Cepa. VIe have the Education Project, which gathers together the large number of university people who, in some sense of the word, have problems all of their own. Meeting at Cincinnati, for the first time, are a fair number of individuals interested in numerical control. This is a project which is just now getting started. Vve hope to see it grow as others find information available in this area, and can be served by this as a project. I CHAIR An now that Laura Austin is here the lady sitting on the far right, 11m going to ask her to discuss the Administration Division next. She also has some announcements to make. I IAURA AUSTIN Thank you Jim. o I would like to point out some of the Sessions to be held for the Administration Division first. The Administration Division is a working division of COMMON. It is one from which you, as a individual, will not realize a great deal of benefit for your installation, in terms Page 3 programs that you have obtained through participation in a project. It is a division in which we feel you can contribute a great deal to COMMON, and thereby benefit your installation through the overa11 operation of COMMON, and through what we hope will be an efficient operation of COMMON. The first session I would like to ca11 to your attention is at 10: 30 on Thursday, which is the session on nominations. We will be I within the next year, drawing up a slate of nominations for officers of COMMON. Since COMMON has grown to be such a large organization, it is difficult for us to get around to know each member. We would like to have people who are interested in serving on the Executive Board of COMMON or who are interested in serving as Chairmen of Committees or as Managers of Divisions, to make themselves known at this nominating sessions I so that we can become better acquainted with you, and so that we can have a slate of people to draw from for our nominations for the next year. We feel that you will benefit a great deal from taking part in COMMON from getting right into the working side of COMMON whether it is as a Committee Chairman I or as a Proj ect Chairman, or as an Executive Board Member. c· I I I I The next Session that I would like to call to your attention is at 8:30 on Friday. This is the Future Meetings Session. In this one we will be discussing the locations of future meetings the cities and hotels, and we also would like to solicit help from members of COMMON for Program Chairman and Local Arrangements Chairman. Again, you contribute a great deal to COMMON by offering your services in this area. If you will be at all available for any of these positions, we would like to have you come to this meeting on Friday. We can give you more detail as to what is involved in carrying out these duties at that time. Then, at 10:30 on Friday, is the Program Library Project. We are hoping this will be one of the largest sessions of the conference. In this particular ses sion, we will be discussing the use of the PREP forms, what the PREP form is, what its purpose is, and how it can be of help to your. We will be discussing the Program Shipment Analysis form, in which we are trying to work with IBM in finding out where the problems are in the shipment of programs, and in the distribution of them. We will also be discussing the new .360,1130,1800 Library, and I'm sure this is going to be of interest to most members. We will be discussing the standards for submittal, the procedures for ordering, and what catalogs will be available, etc. I I Another part of the Administrative Division has been the Reference Manual Committee. This has been largely made up of one person Mr. B. R. Russell, who has contributed a great deal of time and effort in preparing for us a reference manual. I'm happy to say that today, I have a preliminary copy of the Reference Manual for COMMON · o o Page 4 o This will be mailed to every installation in about two weeks. You should be receiving the complete binder I dividers and the material. Now this first issue of the Reference Manual is not complete. There are some sections that have not been submitted yet. We felt that we wanted to get it out to the members as soon as possible. The things that it does contain are something about the history of COMMON, what are the advantages of membership I the obligations of membership, what is the coming calendar for COMMON meetings I the organizational structure. We hope here to have completed before too long a list of all the projects that are currently active in COMMON - their scope and objectives. The Reference Manual will not include current reports on project progress. These will be covered in CAST but the Reference Manual will give the scope and objective of each project; it will give you a list of all of the Project Chairmen, so you will know who to contact when you want to have some correspondence regarding a project. It also contains information for you about the information services of COMMON. In other words I how do you submit things to CAST, what can you expect to see in CAST and the Newsletter. How do you submit information to the Newsletter, and what is the purpose served by the Newsletter. And some information regarding the Program Information Dept. I better known to you as the Program Library. This will talk about the ordering procedures for material from the different machine type libraries I will talk about submittal procedures for programs, the PREP form, and the shipment analysis form. We hope the Reference Manual will be of great benefit to you. There is one other thing it will contain I a membership list which is indexed by company name and by user group number. The company names are in alphabetical order I and will give you the installation number. The full address of the installation representative is given under the installation code listing. Later it will also have a geographic list I listed according to region of the cbuntry. I think that this describes what we have for you in the Reference Manual, and rm sure you will be looking forward to receiving this within the next two weeks. I I :0 I ! I CHAIR The next division which we will consider is the Installation Management PAUL BICKFORD - o Thank you, Jim. I want to welcome all of you this morning to our meeting. I would like to begin by outlining the objectives of our Division. We primarily exist for helping to form guide lines to our management in the areas of Personnel and Operation Management. We presently consist of two projects. One in Personnel and Operations and, in a way ,one 1 Page 5 in Education. As a result of the Boston meeting, we outlined some activities for this meeting, and are currently responsible for such presentations as the Job Description and Personnel Selection Presentation. Also a presentation on Programmer Evaluation. We also requested IBM to make a presentation on the Systems Reference Library and one on 360 Operator Training. We would like to solicit at this time any of you who are interested in participating in the activities of our group. We will have a planning session this coming Friday. We have about 30 people in our Projects. We would like to have more people participate actively in our group. So, if you new members or old members are interested in becoming involved in these activities, please be at the Planning Meeting on Friday. Thank you" C CHAIR I would like to particularly suggest to all members I new and old , The Thursday afternoon session on the IBM Customer Engineer relationship should cover a discussion of the APARS I and of something called a Programming Systems Memorandum, which has just been made available by subscription. It lists all the APARS for a given programming system, and comes out every two weeks. It1s the best source I know of to find out what bugs are where and when. It I S extremely useful. Jim Taylor is not here; Dick, do you want to discuss the Systems Division? DICK PRATT Frank said he was unprepared, I'm extremely unprepared. About all I can tell you about the Systems Division is that it consists of machineoriented sessions I and you will find these in your program. Some of them have probably been changed. These will be announced. There are sessions for 1620, 1130, 1800 & 360 and these will take most of the day today, and part of the day tomorrow. I imagine you can find the session you are interested in by just looking through your machine type. There are some sessions scheduled at the same time you might want to split yourself between - somebody has already complained to me about that - unfortunately, there is only so much time. You just sort of have to take a choice or go back and forthe. I don It really have any information as to what is scheduled in any of these machineorient.ed sessions, except for the 360. The 360 will have some presentations by IBM on PL-I, which has just come out in DOS, and on I C Page 6 o DOS, Version 3, which has just been announced, and will be available in April. And, while I am standing up, I would like to say that lId like to meet very briefly after this session with the Chairmen of the 360 committees, so we can sort of get things straightened out. I assume the rest of the mcahine-oriented ses sions are already straightened out. If they are not, I don't know what to tell you to do about it. CHAIR I should say that Dick is not the Systems Division Manager. He l s the Chairman of the 360 Project, as well as a member of the Executive Board. There is one comment that I would like to make about that - particularly in the 1620 area - there will be applications papers presented within the Systems Division. Where we felt that they were sufficiently machine-oriented that they would not be of benefit to anyone other than a user of a particular machine type we put the applications papers in the machine-oriented sessions. I Bill Lane has an announcement, and Jim Tunney has some modifications on the agenda. BILL LANE - o I notice that this is about the first and last General Session according to the agenda. I notice also that, according to the agenda, Friday afternoon until 3 P. M. there is a general time set out for planning of the next meeting. The next meeting will be in San Francisco at the Sheraton Palace and, getting word in for the people of the Golden State, weld sure like to have you come out. Welre quite proud of San Francisco and if you want something to see that is different go out to Ashbury and see the Hippies. I went out to check about a week ago I or two weeks ago I I gues it was, and they're fantastic. For those of you who are worried, they are not around the Sheraton Palace. But, anyway, I would ask that you harken to the call for papers I and also the call for help, because the Executive Board can't put on the meeting by themselves, and I sure as heck can It put it on by ftlyse1f. Weld like you all to help. Weld like to have you consider today I tomorrow, and Friday morning I rather than just Friday afternoon I as to what you would like in the next meeting I and what type of papers you think would be appropriate I Please I when you do find these out I either get information to the Division Chairman or I better yet I get information both to the Division Chairman and to me. Page 7 In CAST 7 there is a little questionnaire-type form that all you do is check things off and send it back to me - it requires a five cent stamp now I I guess. Weld sure appreciate it. 11m looking forward to a good meeting today, tomorrow and Friday I as well as in San Francisco. Come on out. res great in December - the weather's not bad. In fact it might even be warmer than in the East. lAURA AUSTIN In conjunction with Bill Lanels announcement, I might mention for this Future Meetings Session that we have for Administration Division so that you can be considering this I maybe I should tell you where the meetings are gOing to be so you would know whether you ld want to volunteer to be Program Chairman or Local Arrangements Chairman. December of '67 wi'll be San Francisco I as Bill mentioned April of '68 will be in Chicago - so anybody from the Chicago area we'd be interested in having volunteers to help on that program. September of '68 will be Philadelphia. December of [68 will be Houston, Texas. April of J 69 will be Los Angeles. That is as far ahead as I will go right now I but, if you are from any of these local cities, we Id certainly like for you to consider volunteering for help on those programs. CHAIR Thank you, Laura. Jim Tunney has s orne announcements and program changes - JIM TUNNEY, PROGRAM CHAIRMAN Since there is going to be a series of program changes through out this meeting, I am going to try each time to go down the lis t in the same sequence these things appear in your program so that you can make the changes as I go The fir~t change is on Page 14, I believe, the Session W2. 2, which is 1130 - OK, page 12, in W2. 2, in which there is the 1130 project 1 there will be a presentation on 1130 Commercial Applications by Mr. J. Elan. c !'~I i' I' Page 8 0,· Then on Page 16, W 4.4, the PL-I presentation has been moved from there. That session will be chaired by Mr. Mc Ilvain, rather than Richard Pratt, and will include comments on DOS. The PL~I presentation has been moved to T2. l, which is on page 20 -- that's the next item. T2.1, which is again Don Mc Ilvain's session, will have the presentation by IBM on PL-I. T2.1 is PL-l under DOS. The next change is on Page 22, which is T3. 1. T3-1, of course, has the DOS Version 3, which is correct as stated. Down under T 3. 3, the paper on Expanded AUTOS POT for 1130, which is B in T 3. 3, will be given by Charles Newman, instead of D. Carlson. Page 23 - The Education Project there - those presentations from IBM will be made by Mr. H. Cod 0 w& G. Wolf. Their na me s somehow were omitted here. That is in T3. 6. Down at the bottom of that page, in T3. 8, R. Brennan is going to give that paper. lid like to talk to Jim Fisher after session here. His paper right now is scheduled in F3.1, and there is some question as to whether thatls when it will be presented. Also, on page 27, in Fl. 7, the paper by Mr. Groft will be moved to another session. I donlt know where yet, but the one that is scheduled for 9: 15 on AC Circuit Analysis will really take place at 8: 30 inthat session. I gues that s all I have. I CHAIR - As usual there are always afterthoughts PAUL BICKFORD One little note - we are interested in forming a panel here at the meeting of people, two or three people, interested in discussing 360 operator training. We would like for people interested to participate in this panel. It will be Session F2. 2, on page 28. So if you are interested, and would like to participate in a spontaneous discussion here, please meet me up here after this session. Also, we are interested in getting together people who are interested in a CAl project Computer Assisted Instruction - Bill Lane is interested in meeting with these people I so if you will see him here after the session I he will o Page 9 c s peak with you then. CHAIR We are trying to cut this session short today, so that there will be time for registration for the people that didn It get there last night. IBM has requested permission to make a presentation on some new hardware Paul Manikowski of IBM will make the presentation. CHAIR I heard the laugh when Paul read the statement of intent. How many of you people have received CAST 7? Possibly half. There is a letter in that, which is basically the same as the speech by Watson to GUIDE, discussing IBM's policy regarding Program Announcements. I don It know - we have not requested any specific coverage here, so 1111 give you the gist of it. IBM has adopted a policy that program announcements will be deferred until such time as they are reasonably certain that the program will do what the intend for it to do. In some cases I it may even mean that the program announcement will not be made until a program is actually in Alpha or Beta Tests. Because I in many cases I this would be too late to do the user any good they have indicated that they will make a statement of intent I which indicates what they are trying to do I but makes no committment on their part to do it. Their men are saying we are going to try to do this, it may not be exactly what we say here.. We will do something in the area but we may even abandon the proj ect. It I S not very good I but pos s ibly better than s lipping programs and having unsatisfactory programs issued. In addition to that there was a statement made by Watts Humphrey, of IBM at SHARE XXDC to the effect that there would be no extension to the FORTRAN AND COBOL capabilities of OS. Any extension of capabilities would be done in PL-I, unless there was very serious market pressure to implement an extension to FORTRAN OR COBOL. I I I I I With that - thatls about what we had for the General Meeting. I know that there were a great many of you who didn't get registered last night. This hopefully will give you time to do so. Also give you time to catch up on the breakfast you missed. Dave, or Jim Tunney - You know when the morning coffee break will occur and where I Jim? There will be coffee at 10 olclock I outside in the registration foyer area. I'll see you then. Pages 13 and 14 were not made available when Proceedings were published. I I I ~, .. II,,, ~" . I II',,~·' " c o /3 o o 14 SESSION NUMBER W.2.2 SPEAKERS NO FORMAL PRESENTATION. o MEETING WAS CHAIRED BY LARRY ARMBRUSTER. DISCUSSION REQUESTS FOR INFORMATION AND ASSISTANCE COVERING THE FOLLOWING TOPICS WERE MADE MIXTURES OF FORTRAN & ASSEMBLER LANGUAGE COMMERCIAL SUBROUTINES W/ OVERLAPPED I/O ALLOWANCE FOR MECHANICAL FAILURE IN IDEAL FORTRAN PLOTTER MALFUNCTIONS BETTER ASSEMBLER LANGUAGE INSTRUCTION MATERIAL SOURCE CODING OF THE OPERATING SYSTEM DISK COPYING PROBLEMS ON THE 1800 EARLY MORNING START PROBLEM USE OF OTHER PLOTTERS RATHER THAN 1627 GENE LESTER OF IBM WILL PRESENT A TALK ON PRIORTY, INTERRUPT PHILOSOPHY AT SESSION W4.2. A PROPOSAL TO SPLIT INTO SCIENTIFIC AND COMMERCIAL SUB-PROJECTS WAS VOTED DOWN. A SHOW OF HANDS INDICATES THAT ALMOST ALL PRESENT USE ASSEMBLER LANGUAGE TO SOME EXTENT. o IS- SESSION NUMBER W.2.4. & W.3.4. SPEAKERS 360 USERS THEMSELVES MODERATED BY R.L. PRATT & D.R. MC ILVAIN DISCUSSION OPEN DISCUSSION ON PROBLEMS ARISING IN 360 INSTALLATIONS - MOST ATTENDEES CONCERNED WITH DOS. LACK OF PROPER IBM ATTENDENCE HINDERED RESPONSE TO MANY ITEMS. THE FOLLOWING ITEMS WERE REVIEWED DISCUSSION OF ERROR DIAGNOSTICS IN FORTRAN & LACK OF INTERPRETATION. BETTER REFERENCING AND INDEXING OF MANUALS IS NECESSARY FOR THEIR EFFICIENT USE. PSM NOW TO BE DISTRIBUTED BY IBM WILL GIVE USERS A BETTER REFERENCE TO EXISTING APAR'S, ANTICIPATED CORRECTION TIME, AND POSSIBLY IMMEDIATE TEMPORARY CORRECTION. THE RETAIN SYSTEM FOR THE FE'S AND SECOM FOR SEwS IS IN USE BY IBM TO AID THE DISTRICT OFFICES TO BETTER SUPPORT THE USERS. FORTRAN DOES NOT AUTOMATICALLY OVERFLOW UPON SENSING ~ CHANNEL 12 PUNCH. A PATCH EXISTS FOR LEVEL 9, BUT WOULD NOT FIX THE MOST RECENT ISSUE OF DOS. 029'S ARE SENSITIVE TO REPRODUCING HEX-PUNCHED CARDS AND ARE LIKELY TO BREAK THE CODE PLATE, PRINTING OR NOT. IBM MENTIONED THAT THE 029 HAS A NEW FEATURE AVAILABLE (CODE INHIBIT FOR $3.00 A MONTH) TO LOCK OUT THE EXTENDED SET, REDUCING THE KEYBOARD ENTRY ~OSSIBllITY FROM 64 TO 48 CHARACTERS. IT WAS REPORTED THAT AN 024 IS SATISFACTORY FOR REPRODUCING THESE CARDS BUT SOME HAVE HAD POOR EXPERIENCE HERE TOO. REVIEW OF PL/I EXPERIENCE UNDER DOS. EXPERIENCE WAS LIMITED BUT INDICATED GOOD ACCEPTANCE WITH THE COMMENT OF POOR OBJECT TIME DIAGNOTICS. IT WAS SUGGESTED THAT A FORM BE MADE AVAILABLE TO USERS FOR USE IN SUBMITTING PROGRAMMING TIPS TO THE NEWSLETTER. THIS WILL BE PURSUED ~Y THE DOS COMMITTEE. JOB ACCOUNTING (AUTOMATICALLY) IS STILL A DESIRED FEATURE IN THE SYSTEM SUPPORT. HOPEFULLY SHARE'S PRESSURE IN THIS AREA WILL AID OUR REQUESTS. THE oSR TYPE 3 PROGRAM IS AVAILABLE FROM THE LOCAL OFFICE FOR INCLUSION AT SYSGEN TIME FOR LOGGING OF DIAGNOSTICS. o /h I· I I o SESSION NUMBER W.2.6 OS PROJECT SPEAKERS NO SCHEDULED SPEAKERS. DISCUSSION WE PLANNED AN AGENDA FOR THE FOLLOWING SESSIONS. THE THIRTEEN ATTENDEES DISCUSSED PR08LEMS OF CONCERN TO THEM BRIEFLY. AFTER ESTABLISHING AN AGENDA, IBM'S REPLY TO BOSTON RECOMMENDATIONS WAS READ AND COMMENTED UPON. EVERYONE IN THE OS COMMITTEE AGREES THAT COMMON SHOULD SUPPORT THE EFFORTS OF USASI X3.6 TO OBTAIN A NATIONAL STANDARD FOR HAND CODED GRAPHICS. c i I. o 17 o SESSION NUMBER W.3.2 SPEAKER S JIM ElAM OF IBM SPOKE ON 1130 COMMERCIAL APPLICATION PROGRAMMING. DON GARDNER SPOKE ON SOCALS AND REMEDIES HE HAS FOUND. DISCUSSION DAVE DUNSMORE HAS BEEN ELECTED CO-CHAIRMAN OF THE 1130 PROJECT. THE FOLLOWING SUBJECTS WERE OPENED TO THE FLOOR FOR DISCUSSIONIMPROPER DIMENSIONING DISK READ ERRORS o I ..• Ii I'~ i"" " c SESSION NUMBER W.3.6 SPEAKERS MR. G.W. GOESCH, IBM CORP. ON THE c o If SYSTE~S REFERENCE LIBRARY o COMMON Cincinnati, Ohio PROJECT: Management Installation Division, Operation Project SUBJECT: The Systems Reference Library SPEAKER: Mr. G. W. Goesch, Manager, Product Publications mM Corporation, San Jose, Calif. Telephone (408) 227-7100 o FOR PRESENTATION: Wednesday, September 6, 3:30 PM, Session IV 8 Pages Text 0 1 ..• III II :i 0 The System Reference Library 1 I'm Gordon Goesch, Product Publications Manager, IBM, San Jose, California. While I am not involved in the development of all types of IBM publications, other areas of our organization have the same mission for similar publications in various parts of the country. When one looks at a manual, it is not impressive, there doesn't seem to be much to it, but when you get into all tho ramifications in publications, it's a little like an iceberg in the ocean - most of it is below the surface of the water. We haven't solved all our problems and I'm not sure that we will completely but you may be assured that we (like yourselves) are certainly constantly trying to improve our operation. That is the reason I am always happy to talk to groups such as yours about our publications. Because it gives us an opportunity to discuss with you our Publication Library, its organization, its purpose, and revision service - as well as to update you on the library's operation procedures - because even with a good system - you must understand how to use it - if it is to be effective for you. I think that this type of a meeting can be a two-way street for information: We develop the literature; you provide feedback. We do get feed back from you via Reader's Comments 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.!.. think will tell you the publication story. Slide #1 BOL To begin, we have what we call the mM Branch Office Library (BOL). BOL contains much information. Not all, but the major portion of BOL is made up of publications for users of our equipment. 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 display have been published since your last COMMON meeting. Feel free to examine them in depth but please do not take them away, as there is only one copy of each and we want many people to benefit from the display. o Slide #2 FYI In order to call to your attention what publications we have For Your Information 1 ~/ Slide #3 Swamped and to help you avoid being swamped by ordering blindly as the man shown in the slide Slide #4 SRL we have developed the Systems Reference Library (SRL). As you probably know the SRL is a rather extensive library system. Slide #5 Library Shelves However, before you start pulling arm fulls of manuals from its library shelves Slide #6 Mr. SRL Helps Select let Mr. SRL help you make the correct selection. Slide #7 What, Where, How He will a. b. c. Slide #8 System Slide #9 System X o acquaint you with the SRL and tell you: What is available Where you can get the information and, how you can go about getting it. First, you must make some determinations: a. What System or Systems interest you b. What size library do you want - everything for that sy stem or just those parts that pertain to your specialty? (.~ . JiI . Considerable thought and effort was spent in the design of the Systems Reference Library - for both the needs of the reader and the type of publications necessary to support our products. Slide #10 Each SRL is an encyclopedia for a particular system - with separate publications for Ma.jor Subject areas. It consolidates all the basic reference literature necessa.ry for you in: Planning Programming Installing, and Operating that system. Slide #11 SRL Key The key you need for opening any of the System Reference Libraries Slide #12 is the SRL Bibliography for the given system. Currently there are 13 major System Reference Libraries, ranging from the 1130 to 1he System 360 - and of course each sy stem has its own separate Bibliography. You will find, 2 22 0 1 ., o however, that Bibliographies make cross references to pertinent publications of other system s. Each Bibliography is actually an Index of all the current publications about a specific system. In it, publications are listed both by subject code and by machine number - and it contains abstracts describing each available publication. (We will discuss subject code a little later. ) You may have noted that now Programming LogiC Manuals (PLMs) are listed in the Bibliographies. While they are subject to restricted distribution, they are available if a real need is evidenced. The PLM details the internal logic of the program (like a large map of the listings). Slide #13 Bibliography & SRL Newsletter c Now, how do we update the Bibliography? Each Bibliography has its own Newsletter (its color is green) and it is issued monthly (when there are changes). The Newsletter updates the Bibliography, provides abstracts of new publications, and lists Type I programs with their latest modifications. Actually, the Bibliography newsletter is a current "accumulative Index of Publications and Programs" available for a given system. From the publishing mechanic s point of view, Bibliographies are periodically scheduled for revision - when that occurs, the current information from the newsletter is merged into the Bibliography. Slide #14 SRL Masthead Each SRL publication, listed in a system bibliography, is identified by a file number and a form number, located on the upper right hand corner of the publication cover - as shown in the slide. The file number performs two functions: the first part, specifies the system (s) number; the last two digits the subject code o The Subject Code is made up of a group of two-digit numbers (00-99) assigned to the various system components, e. g. 00 Includes, Bibliographies, System Summaries, Configurator s 01 Machine System (CPU) 03 Input/Output Units 05 Magnetic Tape Units 20-50 Programming Systems 3 23 - ...;;.:..: .. -..... - . A recent change now places Application Program manuals under code 60. o The subject code 13 shown in this slide, indicates tbs.t this publication is about Special and Custom features. The form number is self explanatory; however, the form number suffix indicates the editorial level of the publication. Slide #15 SRL, TNL Because of the dynamic nature of computer technical information, frequent changes occur. When changes occur, technical newsletters (TNLs) are issued to update the publications involved. Consequently, not only is the Bibliography updated by its own newsletter but each and every SRL manual can have its own TNL. In most cases TNL packages are made up of an identifying cover page and replacement change pages for the parent publication - .when you receive such a TNL you merge it into its parent manual and throwaway the old pages. inCidentally when a publication is ordered, you will automatically receive the latest technical (suffix number) level copy as well as all the outstanding TNLs available against that publication. Slide #16 TNL Mast Head o This slide shows the upper right hand corner of a TNL. It indicates how the TNL identifies itself with its parent publication. It carries the file number and form number of the parent publication it updates (and it is form number suffix sensitive) Below that is the TNL's own number, publication date of the TNL, and the form numbers of any previous TNLs outstanding against the parent publication. inCidentally, all page replacement TNL pages carry similar identifying information. Outstanding TNLs are incorporated into the parent publication when it is being revised. TNLs may also be merged into the parent publication when it is being reprinted. I 0 I I"" ,1 4 24- 11 iG Information regarding the technical level of a publication and the TNLs that may have been merged into it may be found inside the front cover of any SRL manual. Slide #17 SRL, NL Parent Pub. Manual This slide shows a manual, a corresponding TNL, and a green SRL newsletter. With this combination on hand you have all the publishing reference you need for the parent manual. Keep in mind that the best SRL publishing information source is the green SRL newsletter, because it not only updates its own parent publication (the bibliography) but also lists all the existing publications that are current for that system as well as their outstanding TNLs Slide #18 2 Biblios. 2 NLs and of course that each major system has its own bibliography. Slide #19 In-Out Thus, the SRL system keeps you well posted on what is in (current) and what is out (obsolete) for an effective library. Slide #20 Wrapped Up Basically, you have at your disposal a "living-doll" of a library system. o Via the SRL, you can develop and maintain a library for one system or more - and tailor your library to your own needs. Slide #21 DPT An additional source of information is the "Data Processing Techniques" (DPT) Bibliography (Form F20-8172). It indexes a series of publications of techniques for Study, Analysis, Design, Implementation, Programming, Documentation, Installation, Operation, Scientific, etc. This Bibliography is also updated by its own Green Newsletter. Slide #22 Series of DPTs This slide shows some of the DPT manuals. Slide #23 KWIC Another excellent Index for your use is the KWIC Index of Marketing Publications (Form 320-1621). Slide #24 KWIC & TNL It is published quarterly and updated by a monthly TNL. The KWIC Index is based on an abbreviated 30-position publication title - listing and cross-referencing publications by the important words in the title. 5 4l&QgMJM!la;;;;L",uxamui4J411iA¢ %J¢;¢,4 J ·k,,' ,;;;;,';;; .,'t" • ',. S, .¥M??, _', .iII."" The KWIC Index is listed in five ways: 1. Alphabetical 2. Machine or System Type 3. Form Number 4. Type I & II Programs in System Sequence 5. Type m & IV Programs in System Sequence Slide #25 3 Way List 1-2-3 For example, this slide shows 3 separate word listings for a single publication - "Programs for Petroleum Engineering" Slide #26 2 More List 4-5 and here, the same publication listed by machine number and by form number. o The latest KWIC Index was prepared from 11,546 publication titles which generated 29, 122 listings, Actually, the KWIC Index lists many publications other than SRL publications, such as Executive Guides and Brochures, tools and techniques manuals, applications manuals and briefs, educational material, Another way of putting it is that all SRL publications are Marketing Publications but all marketing publications are not SRL. Hence the KWIC Index provides wide IBM marketing publication coverage. Therefore, to start a System Reference Library, it is necessary that you contact your IBM repre sentative, and work through him, using the three key publications we have talked about, the: 1. Bibliography 2. its SRL newsletter 3. KWIC Index of marketing publications· You can select and build your own reference library to support your system. However, please do not order your publications by writing to Product Publications (the address shown on the manual) or our Distribution Center in Mechanicsburg, as it will only delay the order. You must order through your local IBM representative. Now that you have established the base for your library, let's discuss its maintenance. 6 I. o a. b. Slide #27 SRL, TNL Revision Service If you desire, you may continue ordering specific publications through the mM Branch Office. However, you may prefer to subscribe to the "Publication Revision Service" that the System Reference Library offers. The Revision Service provides automatic shipping of revised manuals and newsletters directly to you without having to go through the IBM Branch office each time. However, Subject codes 00-60 only are supplied by the Revision Service. This excludes installation supplies, education literature, and other supplementary information. Here's how it works: c Slide #28 Subscrip. Card The IBM representative fills out a subscription card with you, using the green SRL Newsletter to indicate those publications on which you want the updating afforded by the subscription service. After the card is approved, mM Distribution Center takes over and a single copy of each TNL or revision involving the indicated items will be mailed to you. Slide #29 Mailman w/Pkg. Remember that only one copy per subscription can be mailed. Additional copies must still be ordered through your IBM representative, just as were your initial manuals. Any changes in your Revision Service are made via a new subscription card. Again, if multiple copies are ordered through the Revision Service, it only complicates and delays matters. It is important to set up a library and assign responsibility for updating and maintenance to make the service effective. Slide #30 SRL & Rev Pkg Now, you are all set, you know what is available, you know how to select the publications, and you know where to get them. Slide #31 The Key Is Yours The key is yours. Slide #32 Key to Knowledge Use this key to open up a tremendous amount of timely knowledge about your system through the IBM Systems Reference Library. o 7 27 Slide #33 SRL I hope that the result of all this, will make you as happy as the man in the next slide - careful planning of your library may help! o Most of you have probably noticed the Reader's Comment Form that is appearing on the back of many manuals these days. Some of you may have filled one or more out. The response to these has often been very gratifying and we appreciate it. I want to encourage you to use them as it is one of the means, along with meetings like this, by which we get the feedback from our readers that is essential if we are to improve our publications and make them more useful to you. This form is self-addressed and post-paid and will be directed to the correct publications group. As a reminder, please don't use the form to order manuals as we have to redirect such orders back to the Branch Office with a consequent delay. On behalf of the publications groups, I want to thank you for your attention and for your comments and pledge to you our whole-hearted effort in providing first rate publications support for your sy stem s. Thank you again for giving me this opportunity to talk to you. 8 I I' I: c SESSION NUMBER W.3.7. SPEAKERS 1. WADE NORTON 2. NORMAN GOLDMAN 3. NORMAN GOLDMAN DISCUSSION 1. REREAD 2. GENERATING WITH A 2 DRIVE CUSTOMIZED 3. ACCOUNTING ROUTINES. 4. VARIETY OF TOPICS. I' I '0 SYSTEM~ "1,1 I~ 1 I o SESSION NUMBER W.4.1 SPEAKERS MR. HERBERT RUDERFER DISCUSSION MR. HERBERT RUDERFER PRESENTED BOTH THE FACILE & FACET MR. WILLIAM SILER PRESENTED HIS PAPER IN ANOTHER SESSION. 30 PAPERS. SESSION NUMBER W.4.2 SPEAKERS GENE LESTER OF IBM SPOKE ON PHILOSOPHY. PAUL MANIKOWSKI OF IBM SPOKE ON EDUCATION INCLUDING COURSES, PROGRAMMED INSTRUCTION, AND LITERATURE AVAILABLE. DISCUSSION TWO NEW PIECES OF LITERATURE TO AID IN ASSEMBLER LANGUAGE ARE AVAILABlE~ 1. 2. PROGRAMMING THE 1130 AND 1800 BY R.K. LOUDEN - PRENTICE HAll. P.I. COURSE - CONTACT DON JOHNSON HINSDALE CENTRAL HIGH SCHOOL HINSDALE, ILLINOIS c· Ie dIiAmlIlM\lA4l\TiiWllMWM;=4iJMCM. 00.4.\;; (·r1M. o SESSION NUMBER W.4.4 SPEAKERS MEETING MODERATED BY D.R. MCILVAIN. DISCUSSION THE PRESENT STATUS OF THE DOS COMMITTEES IN GUIDE & SHARE WAS GIVEN. ESSENTIALLY NO COMMENTS HAD BEEN RECEIVED FROM THE GROUP AT LARGE PRIOR TO THIS MEETING - PRE-SUBMITTAL IS NECESSARY FOR EFFICIENT OPERATION OF THIS COMMITTEE. COMMENTS ON FORTRAN & COBOL WERE PRESENTED BY MESSRS. GWILLIAM & CUNNINGHAM. THE RESPONSE FROM IBM TO OUR QUESTIONS ON FORTRAN WAS RECEIVED BUT WAS VERY POOR AND THE OUEST IONS WILL HAVE TO BE RESUBMITTED. GUIDE IS MEETING IN ENDICOTT WITH THE IBM DOS IMPLEMENTATION GROUP LATE IN SEPTEMBER, 1961 AND COMMONS DOS COMMITTEE WILL HAVE REPRESENTION AT THIS MEETING AND WILL EXPLORE SOME OF THE ITEMS OF INTEREST TO COMMON. I i" ~~~---.-.--~- ... --.------.--.--.-.---------~-.- •.--...-- ..---------- o SESSION NUMBER W.4.6 SPEAKERS PANEL DISCUSSION I DR. R. GA BR I EL MR. M. GOLDBERG MR. N. GOLDMAN MR. P. KOEPSELL PANEL DISCUSSION II DR. R. GABRIEL MR. H.B. KERR MR. P. KOEPSELL MR. D. LA PORTE DISCUSSION 1. ECONOMIC JUSTIFICATION OF THE UNIVERSITY COMPUTING INSTALLATION. 2. EQUIPMENT SELECTION FOR COLLEGES AND UNIVERSITIES. ATTENDANCE 36 o 53 ... =. . = = =...=..... =_ .....= ......"""'.. -~-----------,---~--"""""""-""'""""",.,-,~,,,,..= :=="""'- o SESSInf\.1 "UJMRFR H.4.7 SPEAKFRS FREn 1/11. MATFJCFK, cnMPtJTER CENTER ON NIU SYSTEM/240 A nATA RFTRIFVAL SYSTEM AS APPLIED TO A LIBRARY INVENTORY (""...-."'-. ~I..J' ' . -I j j.i 1,1,1 1j o NIU System/240 A Data Retrieval System As Applied To a Library Inventory Fred W. Matejcek Computer Center Northern Illinois University o ... _ _ _ ._._.~ .....,_ _ ~~~~_~ _ _ _ _ _ _ _ _ _ _ _ _ _• _ _ _......._ _ _ _ _ _ _ • ~1.Jt:'1r'ri"·-~'··'·· ···:~-"·'!"·~·"jj'I-t--··"~·- .... -.~-" .. -.~ ............"-..... -.-.:w..:i,..l:o;.;.;....;,;,;,;.r...;.l.;W;;;,,;...;,,;;= .. ~~~~ _ _ _, o TABLE OF CONTENTS Page Acknowledgements • • • • • • • • • • •• i List of Illustrations. • • • • • • • • • ii Introduction • • • • • • • • • • • • • • iii-v The Problem Defined • • • • • • 1 Special Conditions • • • • • • • • • • • 2 The NIU Solution • • • • • • • • • • • • 4 • • • • File Creation and Organization Servicing Requests. • • • • • • Maintaining the Inventory • • • Maintaining Records • • • • • • •• • ••• • • • • • • ·....·.. Appendix A . . . . . • • • • • • • • . . Appendix B • • • • • • • • • • • · . . . Appendix C • • • • • • • • • . . . • • Appendix D • • • • • • • • • • • • .. Future Prospects • • • • • • 4 19 26 29 33 35 36 37 38 o ACKNOWLEDGEMENTS Much of the success of this system, for it has been operating successfully more than a year now, must be attributed to: Dr. Robert Hunyard, Head of Northern Illinois University's Audio-Visual Department for recognizing the problem and the possibility of a computerized solution; Mr. Clyde Givens, Director of the Computer Center, on whose analysis the system was initiated; and Michael Roldan, Director of the Film Library and his staff, who learned to use the various facets of the system as they were designed to be used, without which the best design never becomes operational. Finally, the existence of the system is in no small way due to the patience of my spouse, Elizabeth. o i 37 _~_~~""""",,",,",",,- _________ ""'lItu_'hIiWfW'~" .. " .. .,. -.. . . ..'1lt'g.•~.-- .m. o LIST OF ILLUSTHATIONS Page Figure 1 Disk Layout • • • • • • • • 2 Disk TAble of Contents • ...• 6 ....• • • 8 ... • .11 Film Number • • • . . . . . . . . • .13 Film Hecord Formats. . . . • .15 3 Customer Files • 4 5 6 Invoking the System (Activity Chart) .18 7 IDNIC Index. • • • • 8 .....• • • • 20 Processing Requests (Activity Chart) .22 9 Processing Billing (Activii.y Chart) •• 25 10 Request Growth Curve • • • • • .'. • .27 11 Updating The System (Activity Chart) .30 ii () 3R I i I\< o INTRODUCTION NIU System/240; Northern Illinois University and the system we developed. It took on the project number "240" identifying the application area with which we were dealing within the University, Audio-Visual Aids. This is a data retrieval system developed on the 1620 to solve the inventory problem faced by the film library at NIU in the AVA Department. The manual solution to the problem was unable to handle the growth both in terms of the student body (see next page) and c' something refered to as the "information explosionll • This is the first point we see under"justification" for the system, the economic aspect. Extra clerical staff to handle the volume could not be hired for the same expenditure involved in the operation of System/240. The second point under justification is better and faster service using System/240. User requests that are received in the morning are confirmed by the afternoon mail. This is in comparison to the normal two week response time by other libraries in the area. The third and last point is the additional predictive information to be gotten from the system based on the records kept by the system. !o So much for justification. unique is the system? iii How new or 0 DU([J)/l?'l7'17.17ER/l¥l~ l'O/s-o GrowTh 3,o/'10 I NIII SYST"M/2'~- IS-I< I IJAI J.IIIIE I NIII S-YST6M/~ ~D. I SrJII Ii T E.1J f I 1'2.0 IDk t "'~ ~J I I , I I S-It I NIU I I TI/lCNI~'$ COlI-lifE STAT. I I t9 ~ 1> ~ ~ ~ c 1> U\~ ~ r~ - ""jl 0'" 40 .---~~--.------ --:0 --~-.-.~-.-'~-~~--~- o A review of the literature shows that NIU System/240 was, at the time it went on-line in April of 1966, the only application of its kind in the country, and is to date the most comprehensive of exisiting systems, irrespective of hardware. How did we arrive at this solution? To answer this question we will look at the problems facing analysts when embarking upon the creation of any data retrieval system to solve an inventory problem and then look at how we faced these problems. o v 41 o THE PROBLEM To give structure to the following discussion we will separate the problems and their respective solutions into four classes. This taxonomy covers the basic problems faced in the design and implementation of a data retrieval system. Our first classification covers the creation of files; something common to the early phases of most systems, because in creating a new system or converting an old system from manual or other means, the files must be put into ma.chine usable form. The second class of problems concerns the actual servicing of requests by users for the item contained in our inventory. The third is the maintaining of-the inventory. We must have a means of deciding how many of a given item to have on hand. The last basic class of problems is that of maintaining records. Our problems demand that we maintain records on both our users or customers and our inventory. Before elaborating on these four problem areas and providing the corresponding solutions to the problems, let's look at the special conditions which are placed on our example application, the NIU film library. o o A RECIRCULATING INVENTORY A film library is a special sort of inventory. It embodies a recirculating scheme by which films are supplied to the user and then returned to the shelves of our inventory. Therefore the normal input which maintains the "on hand" number of items that we have decided upon, is from the user, not a supplier. In other, or what we may call "one-wai' types of inventories, the input which maintains the non hand" number in the inventory is from an outside supplier. The only time which the recirculating inventory gets its input from an outside supplier is when we c wish to change the !ton-handlt level because of increased demands. In designing the system, this recirculating scheme forces special considerations in three areas. All three fall within the scope of the inventory file maintenance. First, because we "reuse" items, we must keep track of each and every item within a given type, rather than simply being concerned with the total number of that item available. We must know whether or not print three of a given film will be back in the library in time to fill another request. Seconq we need a method to tell us when to go to the outside supplier and beef up our inventory. This is more complicated in the recirculating inventory than in the oneway inventory. 1 0 - 3 - The third manifestation of our special conditions is possibly a blessing in disguise. c· Because quite often orders are placed more than a year in advance, our files must be large and complex, but the potential blessing comes in the preview of demands to come that we can glean from these advance orders. But this is only potential. We must take advantage of it. Having now looked at the justification for the system, the structure of the discussion to follow and "tne special conditians a film library places on an inventory system, (and hopefully having put you in mind of the special conditions of your particular inventory problem) let's see what we did to cOJae with the four general classes of problems embodied in the design and implementation of a successful inventory system. I·, tl Ci THF~ NIU SOLUTION First is the area of creating new files. We Hill consider our basic tools in terms of hardware and then software. The hardwarA c0r:c.::ists of an 113M 1620 Model II with 60K, which has been undated to include a 1311 disk drive and 1443 printer. The 1311 disk drivp is the medium that we use for our mass stcra~e of recQrds. two parts; that The software will also be considered in whicr~ is sUPGJ.ied by IBM and that v-rhich is sllpnlied by the Northern Illinois University Computer Center. The t1oni.t0r I CI: i~ thA norrral suoport system supplied wi.th the 1311 disk drive but as used, has been somewhat modified frcm the original IbM version. we do this utili7.in~ Tho1Jgh we do compile FOFTRAN another disk thus er.abling us to delete FOPTRAN TT-D, its subroutines, and some unused utilities from our nroduction disk and in turn make this room available to System/240. Sinee three of the four basic programs are in SPS and 90 oercent of our running is execution rather than comniling we do not really lose any flexibility. The four programs developed as the full compliment in NIU System/240 are named AV-LOD, AV-DLY, AV-RPT and QIKLOD. AV-RPT is the only one written in Fortran and is used for our quarterly reports. AV-LOD and AV-DLY are the only ones that are disk resident and used on a daily basis. o a key part of our back-up. QIKLOD is - 5Since we have only a one drive system, a strict disk to disk o back-up can not be provided, but with QIKLOD and the card output that is produeed during our daily procedures we are able to provide card back-up. Figure I sho'W"s the status of our disk and if you are familiar with the normal organization you can see where things have been rearranged or deleted. This includes limiting the Monitor work area to the minimum 11 cylinders. There are basically two files in the NIU/CC software. The one is a file that contains all the information pertaining to our users. This file is broken again into two parts that may be termed our "billing and shipping files". We have run into the necessity of creating these two files by the nature of our users. In dealing with schools or other large institutions we are often asked to bill a central office or school district, but in turn they want the items, in our case films, sent to individual users within their system. So we are faced with the problem of billing to one address and shipping to several addresses within that particular users juristiction. We will look closer at these files as we get into the structure of the actual records. The other file that we keep on the disk is a complete file of all the items, again in our case these items are films. Our film library is divided up into 21 logical categories by subject matter. We use these logical categories as actual physical categories in our disk organi7.iation. For each category o o SEGTDQ AD Dr- ~~ I Ie' i I 01 .s "" ~ ~ ~8 A~ I I ~ I I ." ~ -If V') 0 .,u l ~ ...c >'8, .s d ~ ~ "/9 - 9 - would be exactly equal to the field of "B's" or the beginning o address of a given category, for the active level would be the beginning address of the category. The second field, or the field of uN's" indicates the last film number within that given category. Each category starts with a film number one and goes on to the la.st number within that categorYe The last number is the number that appears in this field so that in our search we are able to check immediately the last number and see whether or not the film specified is a legal film for that category, i.e. if it falls within this range. The last field or the field of "L's" as it appears, is the limit to which we may fill this category. When a category is completely filled, the converse of the situation we mentioned earlier occurs. The field of "Ats" and the field of "Lts" are equal because the category has been filled to its limit. Within that static table there are two additional entries, one is the beginning address of the customer, or the billing file; the other is the beginning address of the shipping file. Now going to the organization of our two customer files, if we have an individual requesting a film and the request indicates that he is to have the film sent to the address he is to be billed at, this customer is entered in only one of our two files - he is entered in our billing file. If though, we have a customer that wishes to be billed at an address separate from the address to which he is having the film shipped, he is entered in s-o rtr·~. ~c';f - 10 - o both files. We gi.ve each customer a four digit number. If he is a customer with the same billing and shipping address this is all the number that he gets. If the customer does desire a separate shipping address, one separate shipping address or several, then on the initial cards that we use to create his records on our disk file the two cards that contain his billing address also contain a 1 in card column 7. 1 This indicates that there will be shipping addresses to follow these billing addresses and these will have the same four digit customer number but will also have a two digit shipping number tacked onto the end of this. file. c· These records are then filed on our shipping address Then we have a billing address number which is tied to one or several shipping addresses and a sequence number which makes each shipping address unique. If we look at Figure 3, we see the example of customer 101 in our billing file with a 1 coded following the 101 which indicates that in the shipping file we will find at least one shipping address if not more for him. When we make a request for the customer number 10102 this request is serviced by going to the billing file, finding customer 101, finding out whether or not the 02 is valid for this customer in other words whether or not the customer does have separate shipping addresses by the fact that there is a one following his number on the file and then going to the shipping file and finding customer two or shipping address two of customer 101. 0·"·" " ICard Formats appear in Appendix A. ~/ Figure 3 0, • o o • N o -o o I I· lI • () I --0 -0 2 ~ - 12 - Moving on to the organization of our film file, we'll look at the key to this file or our film number. find an example of our film number. In Figure 4, we The first digit of this film number is a length and color code. The two digit category which is the logical category mentioned above and the physical category that we find on the disk. We have then within the category a four digit number which uniquely identifies a particular title of a film. Tacked on to the back of that we have a two digit number which uniquely identifies a given print for that given film. conditions showing up. Here again we see our special In this recirculating inventory we have to keep track of not only the total number of a given item but c of each and every item as a unique entity. number Cl This is our print We have multiples of a given item, i.e. a given title of a. film. Very popular films have several prints. A footnote to this; the DAVY group which is to the educational film industry as COMMON is to IBM, is trying to come up with a coding system to be presented to the Federal Government as a suggested national standard for the entire educational film producing industry. Though we did develope Northern's numbering scheme independently, we find a great resemblence to the DAVY number in the one created for Syatem/240 at Northern. We ha.ve the two digit medium which corresponds to our category, one digit storage area which corresponds directly to our length code, a sequence number of four digits (this is our "title number") 0, and the two digit print number which we just refered to. In '(",.,I! addition they carry a two digit year of acquisition number. S3 This Figure 4 0 j t 1 c:J.-~ ~~ ~~~ I ~~~ .~ 1 I ;'d! ~ f 1 i I I Q:: l4J Il ~~ --J~ G: . y • ~~ ~,,"~ ~~ ~~ . .~&. ~ ~/ ~ < C I 1 H > C -1~ o~ .-<6:~ • .~~.) J). ~~. A 1 j ~6 4rro .~, ~ . .,.~~ 6 .. ~ ·cC~ '-" t' ~ ?~ ..,,- C: I" - 14 number we carry internal to our record but do not put on our key. If we look then at Figure of our film records. 5, we have the two formats The first is the general information on a given film, information similar to that which we would expect to find on any inventory system. We have the film key which we just mentioned above, the film title which corresponds to the item description, a rental amount which would correspond to a selling price, the cost of the film to us which would correspond to a users purchase price and the number of times this particular item was requested by a user plus the number of times we were unable to fill a customer's request because the film was not available at that time. c In addition we have the alternate film number. The alternate film number is a number that is used if the customer indicates that the time period that he has requested is very important to him but that the particular film is not important and that a film covering comparable material would be satisfactory to him if we can make a suggestion. This alternate film is automatically booked for him on the given dates if he indicates that we can make this SUbstitution for him. The second record is also an outgrowth of our special conditions - added problems to the normal inventory system that we had to cope with. This is the record that we keep on each individual print, each individual item within an item type. gives us summary information, frequency of use, the contract o This ..-.-.. '-.""".""'''''''''' .... '-.-.-~'~~~"'--'------------- Figure 5 o ~ ~ (/) ~ ~ ~ t.a • ~ ~ 0 0 II 0 U til ~ ~3 ~ () ~ ~ / :e L» ~ 1 1 I ~ ~~ -0 2a. ::> ~j Z ~b I 05 ~o. 5~ C,' o MAINTAINING THE INVENTORY If we look at Figure 10, which is labeled REQUEST GROWTH CURVE, we are trying to develop here a buyer's indicator by keeping records on particular films. This curve describes the demand on a new item from the time of the user's awareness of its availability to some time out beyond that. for this film grows; 80S As the demand we go up on the axis labeled'trlumber of requests", we can also mark it off in intervals indicating number of prints of that film, or number of that item which we have to keep in our inventory in order to satisfy these C 1\ requests. When we reach the doted line, we have a choice to " make, whether to purchase, lease, or by so~e other means obtain the items in order to catch the peak of this growth and get these requests, or at this time to stop our purchasing and to realize that we are going to have to take some "not availables" or find that we are unable to satisfy the customer's request, but in so doing not have obtained films that will not be in demand beyond time "y". equation for this curve. It is our job to come up with an At the current time based on our recrods, we can find a breaking point - point B - where the curve starts to come back down or it starts to change direction somewhat. o When this happens we can cut off or we can lease items Figure 10 0 J.IJ :> I ~ I CJ I I ~ I I S <-!) I I I tl JJJ I J I =» ~ Ld --I~ I C¥ ~ I \. -,' ';../ I J ~~ H § I I I I I I I.¥ 0;" '5' - 28 - for a short amount of time in order to fill in this area and pick up these extra requests. But our job is simply to supply this buying information to management so that intelligent decisions can be made on growth and trends within the inventoryo This is the heart of the successful inventory and the conclusion of the third portion of our solution. o o MAINTAIl\fING RECOEDS Having covered the creation of new files, the servicinE of requests and the maintaining of our inventory, let's go now' to the maj ntaining of O1Jr records. We find that in the maintaining of our records we are going back to the Same system that provided us with the ability to create these records. We have if you refer back to Figurf~ I, the disk layout and Figure 2 the Disk Table of Contents provided for our user department a system that very closely parallels IBM's index sequential on the 360. We have come up with an index sequential type sytem for a 1620 disk system. We have quite the same capabilities here - the system can create files, add to the files, delete from the files, process the randomly or sequentially. fi~s All of these abilities are itemized in Appendix D" The updating is done on a daily basis, in other words, the AV-LOD program which provides both the creation and updating abl1ity is run daily just before the AV-DLY program which 1 services the requests. Figure 11 shows the operation of AV-LOD 1 in the update mode, but it should be noted that in our system, creation is a special case of updating. 1 I" At this point we must look closer at the back-up system that we mentioned earlier. () 70 I,,· 1:.1 Figure 11 c ta.. :::> -z ~ ~_ _..... c:J o 7/ -~----- --...-............ --.... ....... .,... ,~.~~~~------------- - .31 - If we h.ave to riu pI i . e!3. te our files we have to foo steps. Numt)er one throuf'~h three c' is to load tt, moni tor s.ystem on the disk, numt'er two we hcl've to load our ba.sic files which amount to our customers two part file, bi.lling a.nd shipping, ano our film records for each category. The th~rd step is then to reload all the da.tes booked on thr3 fi lms we have ju st loaded. The loading of the customers and the films is done ae;ain by AV-LOD, but the loading of the dates booked for a given film is done by a unique ~hich any pror~ram named QIKLOD G This uti 1 izes 01)r a.cti vi ty cards are kent up to da.te on the basis of our bilJing, i.e. for filrnr~ that h2,ve t)een returned. and are no longer ovt of li.LJrary the t!'an9~wtion th€~ or activity card is pulled i.'rom our ca.rd fi le and storpd elsewhere. So 1-Then loading up the peri.ods booked for a given film we have current bookings. on~y This particular prop:ra.rn allo'Vls us to Toad someHhere in the nei.ghbor- hood of :> ,000 bookin~8 .i. n an hour. The dai1y booki.nf, program t.hat provi.des us with the conftrmations a.lloVJs us t.o book something like a thousand in an hour. from We usually spend. anywhere 3 or L minutes to 15 minutes on the 1620. time peri.ods thi.s smaIl the Ploat compu ter time, but set-u~' 8ivn~~ficant Obviously in time factor :i s not tirr,e and genera.l operator intervention. Having looked at the fOllr Darts of the problem and in turn tte four parts of our solution, whi.ch involves creation of new fi.les with program AV-LOD, servicing of requests using AV-DLY, maintaining of an :Lnv~:~y:t.cry by Droducir:g A. bU'yer's indictor for c - 32 - management and mainta.ining our records through the use of QIKLOD and AV-LOD and having talked a little about the pleasantly surprising performance we have gott.en from the system, lets look at fut'Jre projections for the system and areas of growth. o o FUTURE PROJECTIONS Referring to Northern's enrollment growth curve in the Introduction to our dlscussion, we can see the installation of our Model 40 360 in August of 1967. With the installation of the machine under our belt, we are well on our way to converting System/240 to 360 COBOL. As we mentioned earlier, a large part of the development of System/240 was devoted to producing our own Index Sequential system for the 1620. This having been done for us on the 360, the strict conversion is going rather quickly. Of course in a 360 we have additional hard-v-Tare capabilities not found in the 1620. Two of these are the teleprocessing and multiprocessing capacities. Using teleprocessing we can do several things, two of which are; (1) give "irrunediate" response on film request and (2) develop a cirriculum-building-tool in the University. In the first case, not only can an immediate "yes lt or "nott response be given on a request, but if the response is "no" a calander showing remaining available dates can be displayed on the CRT. In the second case we can expand upon our existing quick inde~ and on request, display available material pertinent to the subject matter to be covered plus indicating proper sequences. - 34 - o The multiprocessing capability gives us the technology to be able to tie all the state libraries together so that a request given to any of the libraries would exhaust the states potential, i.e. over the phone, in a matter of seconds any indi.vidual could have the entire states film resources at his cornmand. We have now a data retrieval system that is updated daily. With the new hardware to fill the gap we will have a realtime system. We feel at this point that the ability of the system to grOl-T rN'i th increasing demands and greater the capabilities of the hardware is li.mited only by the extent to which we wish to Dllrsue it. c 75 APPENDIX A if.r007 P04884 1(eqV#.5i IJrJlYIBItR 67 IOC: 00 b 7 00011° 1 R£TU~tJ ° a 9 10 11 12 \3 14 15 16 11 11 I 20 21 22 23 24 15 " 21 1! 23 30 11 1213 34 Jj l_ C ~AT~ IJ'STO/'lli=R s""PPtlJfj ~IIM3ER. ° l 0 10 ~ : 10 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 .: il R -; 0 0 0 0 0 ~ -: 0 0 0 0 0 0 0 0 0 0 0 0 0 0 n 0 U0 0 0 00 000000000 1 2 1 4 5 , 1 ~o SH IPf>;\J~ l>ATE FILm NilirT/Ji!fl o Cit 01 19 67 I )075 I( ~nli66~Te31fl SHIPP,,,,c:. 10 1"1 rlt 1 36 31 38 39 40.41 42 43 4~ 4546 41 4! 49 50 II 52 S3 5.4 55 5~.~1 5~_59 60,61. 2 63 S4 &'_ 66 &l 68 69/0 11 11 13 14 15 16 JJ 18 19 80 I I FIIoWI ~4I""B;:~ .,OOOOOO,O,OOO,OOOOOOOOOOOOOOOOOUOOOOOOOOOOOOOOOOOOOOOilnooooooOOOOOO~OOOAAOOOOOO j 1 2 3 4 5 & 1 8 9 10 11 12 13 14 15 \6 11 18 19 20 /1 11 13 14 15 26 /1 18 29 30 31 32 33 34 .35 36 31 38 39 40 41 41 43 44 45 45 41 48 49 50 SI 52 53 54 55 56 51 58 59 60 61 62 63 S4 : SlilElib071Cli6€lilj66 CVj~~J[alr F'/L./tf l)Are P;;t't18{5R ])tJI£,,] Sf:: ~~o (N 66 &1 6& 69 10 11 11 13 14 IS 75 17 18 19 80 4885 , ~~tiI",I~K: R.Ffiltl,Uu (S-008) ·1 ' FRo.tII 6~ ,'2 o • O. 0 0 0 0 0 0 • ... 0 0 • 0 • 0 0 0 • 0 0 0 0 0 0 0 0 fi UU 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 , I 2; T;/~7RtXToR. "be-p·r. 1"0 0 an,' 0 0 0 0 0 • 0 0 0 0 0 ~ 0 0 0 aDo 0 0 0 0 0 j 4884 .: I 1 2 3 4 5 6 I 8 9 10 II 12 13 14 15 16 11 18 19 10 11 21 23 24 25 26 2J 28 29 30 31 32 33 31 35 36 31 38 39 ~o 41 4243 44 45 46 41 48 49 5051 52 53 54 55 56 51 58 59 60 61 62 63 64 6' 66 61 68 69 10 11 11 13 14 1J r JJ 13 J9 80 V 6PjlrE7r4fOO((I~2'670~3(rt:,~~1'Jl~~~.:5 eVtl!Ii!~... ,:',~,yr .0 bAril'S 'R.;Q,Mt;O" NI.INl8eR. lArs tRaM o, 00 000000J 1 2 3 4 5 6 J V-~ a 'I 'I "'I. 1 'I " " '1 '2 Ti •, Ii.. I! 'l 'l 'l 'l OJ. III • ~ i-;i3I(,M.'f _, ~ ~ ;Jc;()~5j £0 Ai '-1 () -: IJI.T2R{VtJTe"~ q I?=~ J r 4 - t-r _ I 2 3 4 5 6 .1. t .9.10 Il.JZ 13. lUa .lULI8,\,9 20 2Ul 23 24. 15)6 to' ~TH fL2L2~..3'L3.!.~ql 34. 35 36)1 38 39 4Q ~1 4143414546 H 48 49 50 51 ~UHORA SlREET 5~ .Joy ell I.. r ~ ~ cl, 4 II . 0 ADO 0 0 0 0 • 0 0 0 0 0 0 0 , 0 0 0 0 0 0 0 , U0 0 0 0 0 0 0 .oj 0 0 0 0 0 0 0 0 A 0 0 A 0 AnA. /- 4p001 0 11 (79 T.. A A 0 0 0 A' 535455 56 51 56 59 60 61 61 63 A 7~ ~ /J1I"'AEjl. 1 .I \1 ~4 I ~. 1: 5' 66 6J 68 S9 ?O 11 12 13 H 1~ 1. I .' l 1118~1"{ -- (500~) Il.. ~H/~PINl.i E 1 1LL 1NO'S 60504 ft. a ~E ~ ~ (5005') 0 0 0 0 ~ 0 0 0 0 0 0 0 0 (\,l1li l' ,,·....It ~ ~5~~lc060C')95~'(O::1~i~· w·· 'I. 't 'J. 't F, '- h1 N.;meER e.r.,. (SDO~\ R£. -~ E~il:;RYor'i I C liEVELOPNENT ·c~ J CK "" •• r! ~,q;: e. 0 A 0 0 0 0 0 • 0 0 J 0 0 0 • , ~ n •. U~~ ~~ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 a ROO 0 0 0 0 0 0 0 0 0 0 ~ 0 .0 0 0 0 0 0 0 0 0 0 J' F'U_m A \ c. 9 10 II 12 13 1 15 76 IJ 18 19 20 21 22 23 14 15 1 Zl 18 29 30 31 31 33 4 35 35 31 38 9 43 41 42 43 44 45 46 41 48 49 50 51 52 53 54 55 56 5J 58 59 60 61 61 63 64 6' 66 61 68 69 10 JI 12 13 1~ 15 16 JJ 18 19 gg ' 114°00;1°1 o000 TO' ! ~ 11 ~I>PK.2SS 'tot o &.;. 0 • 0 0 0 0 0 0 0 0 0 • 0 0 • • 0 0 0 • 0 0 0 0 Don 0 U0 0 0 0 ~ 0 0 0 0 0 0 0 0 0 0 0 0 • 0 0 • il • 0 0 0 0 0 0 0 0 0 0 0 0 ~ 0 0 0 0 0 0 0 0 0 0 0 1 7 1 4 5 6 1 ,8 9 10 II 12 131415 16 11 18 191021 22 13 242526 2l 28 2.9. 3a~I.. !~_}3 34J5~_6 JJ 38 3~_'O 4: 42 43 ~ .. ~! 4.6._4? 434950 51 51~3 .54 5556 51 ~~_59_60 61 615364 E' 66 6J 68691011 11 J3 H 15 16 1i J8 lJ 8J r .; x I u~ JUU 1 U 11 AURLIHA E "~.,, " A V COORDlNATOR SCHOUL '2.'1 'I '1.'1. '1 ') ') '2 o• ~ 0 • 0 0 0 A 0 0 0 0 0 0 0 0 0 0 0 0 ADO 0 0 0 0 0 G0 U 0 0 0 0 0 ~~ 0 0 0 0 0 0 0 0 0 ADO 0 0 0 a n 0 0 0 0 0 0 0 0 0 0 0 0 ~ 0 0 0 0 0 0 0 0 0 0 0 A 1 2 3 4 5 6 1 8 910 II 121314 15 16 11 \8 19202122132425261128293031323334353631383940414243 44454041 48 49 50 51,253545556515859 SO 616263646' 6& 6168691011 12 V"-·c~'oo 1 1. 'I 'I 1.,. 'I o, , !l. IF!> {)/Z#s" j 0001 1ALiRORA F'-S'· E'ti-f·s-r '-131· _. Cu II "5 rc 'I " "'1..'1 e. '1.2 ... , • '1.'1 'J ~~ . .- ~OORD· it1StR- 3(4.~IAj() Jj ~ " Ii r1ATRLS 'l. 'l. L L !l; LL c. • . I 000000000000 ~ ~ 0000000000 35 ,J 1839 40 41 H4314 4i 16 4148 4950 5152535455565158 i9 60 61 62635.6' 66'1 caSl 1011 ni3 a J5 16 JJ 11 J9 80 !l.~; !lj "'I " 14 J5 TS 11 78;980 (5 0 0=0 'I.. 1 ;1( Sf: ~Jt '1. 0 0 0 0 0 0 0 0 0 0 0 , 0 0 , , 0 0 0 ADO 0 0 DOG 0 U0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 A 0 0 A il .t I 1 3 4 5 6 1 3 910 "_12 131115_16 11'819102121231415.1621281930 lln1334 r] 1. -a/'Ll/V.:) , n HliROHA I LL I t10 'S 6050q 1417 i=" I to TH STF.:EET .... 76 .._....-.. . ...... (5"00/) . It ~ I t~ APPENrJIX NORT~I:RN R ILLINOIS UNIVI:RSITY CONFIRMATI'ON COpy EDUCATIONAL FILM LIBRARY DE KALB, ILLINOIS 60115 REQUEST NUMBER I IMPORTANT SHIPPING DATE SHOW DATE DUE BACK DATE •••••••••••••••• ............... ** FILM TITLE FILM NUMBER RENTAL AND • • • • • • • • • • • • • • •' SERVICE CHARGE $ • • • • • • • • • • • • • • • , ' CUSTOMER NUMBER CUSTOMER ORDER NO. BILL TO SHIP TO • PLEASE NOTE ABOVE FILM IS A SUBSTITUTE BECAUSE FILM ORDERED IS NOT AVAILABLE. •• 15¢ INSURANCE CHARGE ADDED FOR EACH FILM. o -------- NO~TH ;;N-~:L~ NO~-~~I~~;;I~Y -----------1 REQUEST NUMBER FILM NUMBER CUSTOMER NUMBER EDUCATIONAL FILM LIBRARY DE KALB, ILLINOIS 60115 I IMPORTANT SHIPPING DATE SHOW DATE DUE BACK DATE FILM TITLE CUSTOMER ORDER NO. FROM: AUDIO VISUAL CENTER NORTHERN ILLINOIS UNIVERSITY DE KALB, ILLINOIS 60115 TO: BILL TO PACKING SLIP - NOT AN INVOICE RETURN REQUESTED LIBRARY MATERIALS 16 MM MOTION PICTURE. NON FLAMMABLE 77 APPENDIX C I- I NORT~ERN ILLINOIS UNIVERSITY EDUCATIONAL FILM LIBRARY DEPARTMENT OF INSTRUCTIONAL MATERIALS DE KALB, ILLINOIS 60115 CUSTOMER NO. INVOICE NO. INVOICE DATE PAGE NO. ** 15(t INSURANCE CHARGE HAS BEEN ADDED FOR EACH FILM. I L- ~ REQUEST NUMBER SHOW DATE FILM NUMBER CUSTOMER ORDER NUMBER FILM TITLE ** RENTAL AND SERVICE CHARGE t PAY LAST AMOUNT IN THIS COLUMN _ _ _ _ _ _ _ _ _...... INSTRUCTIONAL MATERIAL TRUST NO. 52428 SIGNATURE OF INDIVIDUAL PREPARING MAKE CHECKS PAYABLE TO: NORTHERN ILLINOIS UNIVERSITY MAIL TO: NORTHERN ILLINOIS UNIVERSITY. BURSAR'S OFFICE. DE KALB. ILLINOIS 60115 78 INVOICE/STATEMENT APPENDIX D AV-LOD MANIPULATIONS ••••••••••••••••••••••••••••••••••••• C'·" " • FILMS • ADDRESSING • ••••••••••••••••••••••••••••••••••••• .TITLES. PRINTS. BILLING. SHIPPING. • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• • • • • •• •• •• • • • • • .LOADING 1 1 1 • • • • • 1 • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • ••• •• • • • • • • • • • • • 4 .AUGMENTING. 2 3 5 • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •• • • • • • • • • • • • -6.REPLACEMENT. -7• • • • • • • • • • • • • •• • • • •• • • • •• •• • • • • • • • •• •••• • ••• ••• • • • • BASIC REQUIREMENTS AND END RESULTS •••••••••••••••••• 1. INFORMATION LOADED AS IT APPEARS IN THE FILM AND CUSTOMER FILE. c 2. OPERATION FILLS GAPS IN TITLE LIST OUTPUTED ON TYPEWRITER FROM STEP ONE AS 'GAP' --INPUT FILM CARD WITH NUMBER OF PRINTS TO BE LOADED IN CC 9-10. 3. OPERAT10N ADDS PRINTS. INPUT FILM CARD WITH 9-10 BLANK AND THE NUMBER OF PRINTS TO BE ADDED APPEARING IN CC 19-8 U • TYPEWRITER RESPONSE • • • ••• • •••• ••• ••• •• 'GAP' CC NNNN FFFF LEAVING A GAP IN FILM NUMBERS C - CATAGORY N - NEXT OPEN NUMBER F - NEXT FILM NUMBER PLUS APPROPRIATE ERROR MESSAGES 'ER' XX XX - IDENTIFICATION NUMBER OF ERROR 'AUGT' NNNNNNNPP LL FILLING TITLE NUMBER GAPS N - FILM NUMBER TO BE INSERTED P - PRINT NUMBER FOR SAID FILM L - NUMBER OF PRINTS STORED TO DATE FOR SAID FILM 'AUGPt NNNNNNNPP LL INSERTING PRINT 4. REPLACING POSITIONS HELD BY DUMMY NUMBERS. AMOUNTS TO REPLACFM~NT (7) o 5. OPERATION ADDS SHIPPING ADDRESSES FOR BILLING ADDRESSALREADY HAVING ONE OR MORE SHIPPING ADDRESS. tINSS' NNNNSS (SHIPPING ADDRESS) N - CUSTOMER NUMBER TO BE INSERTED S - cORRESPONDING SHIPPING NUMBER 6. OPERATION REPLACES FILM W/{O IN CC 80), OR W/O(BLANK IN CC 80) CLEARING OF BOOKINGS ON ALL PRINTS. REPLACES WITH SAME NUMBER OF PRINTS. INPUT FILM CAR~ WI CC 9-10 BLANK. 'FILM REPLACEMENT' NNNNNNNN - FILM NUMBER WITH STORED BOOKINGS TO BE REPLACED 7. OPERATION REPLACES AND INITIALIZES BILLING AND SHIPPING ADDRESS INDICATED. 'CUSTOMER REPLACEMENT' (BILLING ADDRESS) 7r o SFSSlnf\1 f\JUtv1RFR T.1.1 SPfAKFRS MRS. J nyc F F n n F R, F '" G T'" F F RIl'l G en MPUT I 1'.1 G L ARn RAT (l RY n (\1 n I S K n ,6 T A. S Tn RAG FRO UTII" F f) 0 S R /'~~\ ~) ?O I DISK DATA STORAGE ROUTINE DDSR c Mrs. Joyce Fodor Engineering Computing Laboratory B554 Engineering Building 1415 W. Johnson Street Madison, Wisconsin 53706 Description/Purpose DDSR is a program,written in SPS II-D to facilitate permanent disk storage of users' data from FORTRAN or SPS programs. The blocks of data are given a name and table entries that are completely compatible with the MONITOR I system. The user need not know what sectors on the disk are available. Machine Configuration Reguired 1. 2. 3. 4. 5. 1620 MOdel I or II 20 K memory Card I/O Indirect Addressing 1 Disk drive General Program Description Since rapid processing of the MONITOR system tables required approximately 10000 core positions, and it was undesirable to take this much core from the user's program, the system uses the area from 02402 to 12000. In order to do this, the routine must first store the contents of these locations on disk so that it can restore them before returning to the main program. For this reason the short form of the subroutines cannot be used when using these subroutines. Both the disk write and the data recovery subroutines have routines which store these core locations in cylinder fifteen of the work cylinders before calling link to the main read and write routines. The read and write routines then search the tables to find the particular entry called or the required storage, and process the data. All data blocks are given both DIM entries and Equivalence table entries. When the routine is used to write data on disk permanently, the routine also makes an entry in the sequential table. Data blocks may be read from or written into di.k in the normal course of any FORTRAN program, and may be used as often as the user desires, but the maximum amount of core that may be stored at one time is 20000 digits. This corresponds roughly to a singly dimensioned matrix of dimension 2000~ If larger blocks of storage are required the arrays may be broken into parts and stored that way. Warnings o This program might not work with the short form of the FORTRAN subroutine because core positions 2402 to 12000 are stored on disk and these core locations are used as work area. If the call to these subroutines, and INDATA or OUTDATA are located above this address the system should work. B/ il l' All entries in an array should be defined prior to storing them on disk o If the array is doubly subscripted this is very important. If it is a singly subscripted array and all the elements from one to the desired element is defined this is adequate. o 1I FORTRAN CALLING PROCEDURES To Store Data CALL INDATA (IND, LF, LK, NR)I ARRAY) IND • 1 3 if data to be stored is a single fixed point variable or a a fixed point array. if data to be stored is a single floating point variable or a floating point array. LF Is the floating point mantissa length for the program being used. LK Is the fixed point word length for the program being used. NR Is the number of elements to be stored, the dimension of the array if it is single subscripted, or M N for a doubly subscripted array. A Is the name of the array or number, fixed or floating point to be stored. * To Call a Data Block CALL OUTDAT (IND, LF, LK, NR, ARRAY) where parameters are the same as above. ,~. b~ Naming the Data Block Whenever either of the routines is called, one data from the card reader. This card should have name of the read or written left justified in card columns 7 to 12. to be sure that thi's card appears in the proper location or error will result and the job will be terminated. card will be read block data to be Care must be taken in the data deck DISK DATA STORAGE ROUTINE nnSR (1620 - 01.1.036) can be ordered from the 1620 program library ~~rough your local representative or: International Business Machines Corporation DP Program Information Department 40 Saw Mill River Road Hawthorne, N. Y. 10532 c~ ,." o SESSION NUMBER T.1.2 SPEAKERS G. ROEMER OF IBM SPOKE ON THE CSMP FOR THE 1130. THE TOPICS INCLUDED WERE THE DIFFERENCE BETWEEN DIGITAL AND ANALOG COMPUTERS, BLOCK PROGRAMMING AN ANALOG COMPUTER, USAGE OF THE CSMP PACKAGE, AND EXAMPLES. P. WOODROW SPOKE ON BUFFERED AND OVERLAPPED 1/0. THIS PACKAGE WILL BE RELEASED TO COMMON SHORTLY. MEETING WAS CHAIRED BY LARRY WHELEN. c o OVERLAPPED .1/0 FOR 1130 FORTRAN PROGRAMS Peter J. Woodrow Aeronautical Research Associates of Princeton, Inc. Princeton, New Jersey For most types of commercial computer applications, computation is at a minimum and input/output operations are numerous. Thus it is desirous, even at the cost of increasing core requirements somewhat, to use I/O routines that operate as efficiently timewise as is possible. Unfortunately, the 1130 FORTRAN I/O routines were designed to require minimum core. As a result, all FORTRAN I/O routines (e.g. PRNTZ, CARDZ) use a common buffer that is filled by SFIO. While presumably, ·on output at least, the I/O routines could return immediately with SFIO waiting for completion before starting a new line, this is not the case at present. All I/O routines wait internally for the completion of the requested operation. This means generally that I/O speeds from FORTRAN programs are almost halved. In order to speed up our cOITmlercial data processing, we decided to write some FORTRAN-callable routines, primarily for use with COMET (since they all use A2 format in effect). iThese routines were each written for a specific purpose but are presumably general enough for different applications. We have never tried using these routines with other FORTRAN I/O, primarily because we did not wish to have SFIO loaded (approximately 800 words), but they should work above modification level No. 5- if the interrupt levels used by FORTRAN I/O are completely different from those used by these routines. In particular, the card routine cannot be used by a FORTRAN program that does FORTRAN I/O on paper tape or the keyboard/printer. o o 2. One point to note is that none of the routines is very complex since all use standard assembler language I/O subroutines. There would almost certainly be no great difficulty encountered in writing a special version of PRNTZ to replace the supplied version and to run at a speed twice as fast as the current FORTRAN version. However, some core would have to be sacrificed. Replacing CARDZ with a faster version is somewhat more difficult for reasons explained below in the brief write-ups that follow. 3. o SPCDR This routine has three entry points; SPCDR, SRERD, and SPCDP. The primary reason for writing this routine was not so much to increase card reading speed as it was to perform some special error checking and code conversion. If it is necessary for computation to be done by the FORTRAN program in order to determine whether to stacker select, this high card reading speed is impossible. In addition, in most commercial applications, each card is printed and hence(for the 1130 print speed is the overriding consideration. For our application it was highly undesirable for the program to accept characters that would not print on the 1132 printer (as does the FORTRAN card read routine). In addition, since we have an 029 keypunch with the left-zeroinsertion feature, we felt it would be mandatory to accept -¢ (ll-¢ punch) which CARDZ translates into a blank. Following are the various calls that one might use. CALL SPCDR(NC, IFV, IFTV, IAREA, NERRC) where NC IFV IFTV must contain the number of columns that are to be read a vector containing field end points. The routine performs minor checking for specified fields on the card. If, for example, the fields were 1 - 9, l¢ - 19, .... etc., then IFV(l) = 9, IFV(2) = 19, etc. N.B. The last IFV element must be greater than or equal to NC . a vector containing on return to the calling program the type of field corresponding to IFV. The following codes are possible 1 - field contains only blanks 2 - field contains only numeric information (no blanks) 96 4. 0 IAREA NERRC 3 - field contains blanks and numeric information 4 - field contains only alphanumeric characters 5 - field contains blanks and alphanumeric characters 6 - field contains alphanumeric and numeric, but no blanks 7 field contains a mixture of all three; alpha~ numeric, numeric, and blanks N.B. A (ll-numeric) punch in the last column of a field is considered numeric (i.e. indicates the field is to be considered negative). a one-word integer vector dimensioned to contain the input characters. IAREA must be dimensioned at least NC/2 words (NC even) or (NC + 1)/2 words (NC odd). The characters are packed two per word as in the conventional A2 format. returned as a zero if no errors were sensed; returned as a 1 if any character read is not printable on the 1132 printer (the only exception being -¢(ll - ¢ punch)). Characters in error are replaced by blanks. The above routine converts characters and checks field types as the card is being read. After the card has been read, the routine checks the error indicator provided by CARDl (indicating a 1442 sensed error) and retries the read and conversion if there was an error. In order to more fully understand the operation of the following two calls, one must be aware of the fact that SPCDR contains an internal buffer into which the card image is read. This is not destroyed by conversion and is thus available for the following two calls. o ===;;;IIt1iML/JMwtttw: ijJ£(£WlJ 4,41#1 it ,.- ,,,. ..-.-""..,.,.,.--.... , ,~~~~-------- 5. CALL SRERD(NC~ IFV~ o IFTV, IAREA, NERRC) This call is provided so that one may reread the same card with different specified fields and thus first sense the type of card to be processed and then actually check the appropriate fields. No card reading takes place on this CALL. The explanation of the parameters is the same as that for SPCDR above. CALL SPCDP(NC, OAREA, NERRC) where NC OAREA NERRC contains the number of columns to be punched is a vector containing the characters to be punched (see IAREA above) returns the error code o = no error 1 = at least one character to be punched not printable on 1132 printer (except -¢) 2 - an already punched column (read on call to SPCDR) is to be punched with a different, non-blank character; i.e.,overpunching is not allowed If an error is sensed, the card will not be punched and an immediate return to the calling program is instead executed. Note that if SRERD is called after a call to SPCDP, it will in effect be reading the Bunion" of the original card that was read and the card to be punched, i.e. the final version of the card as it would appear if it were read again after punching. Note also that for proper operation all cards must be read by SPCDR prior to being punched by SPCDP; otherwise, spurious errors are likely to be generated. 0 1 6. o o o None of the above 'routines is particularly speedy. Their main advantage is the thorough error checking that is done by them rather than by the FORTRAN program. If maximum speed is desired with no automatic error checking, then SFCDR which follows should be used instead. 7. o SFCDR This routine has four entry points; SFCDR, SFCDS, SFCDF, and SFCDP. It was designed for a quite different environment. Here we wished to read a considerable number of cards, operate rather extensively on each card and maintain the results in core. As a result, speed was the primary objective with no desire to stacker select the cards. As a result, the routine was designed with two buffers that alternate. Thus SFCDR immediately starts reading the next card (unless otherwise instructed) and then proceeds to convert the present, desired card. As a result of this process conversion lion the fly" is not necessary and CARD¢ is used. However, the SPEED conversion routine is used and thus all EBCDIC characters are converted properly and at maximum speed. The FORTRAN CALLrs are as follows: CALL SFCDR(NW, IAREA, NC) c where NW I AREA. NC is the number of words in IAREA. to be filled (i.e. 1/2 the number of characters). The number of characters must thus be even. a one-word integer vector that is to contain the converted card characters packed two per word as in conventional A2 format. IAREA must be dimensioned at least NW words long. a code used to control the reading of the next card while this one is being processed. If NC is odd, no new card read is started (see SFCDS below). If NC is even, then the next card read is started unless the first column of the present card happens to contain the card image code equivalent of NC. Thus, if the last card of one 1 s deck always had a 7 - 9 punch in column one, then presumably one would not want to start reading any card following a card with a 7 - 9 punch in column 1. The Subroutine Manual 90 () .., 8. o gives the Hex IBM Card Code equivalent of a 7 - 9 punch as ¢¢5¢ which translates to a decimal integer of 8¢. Hence, NC should equal 8¢ for this example. If you wish to start reading the next card in all circumstances, then NC should be set to 2. CALL SFCDS This call is to allow the user's FORTRAN program to make a more extensive test before starting a read operation on the next card. Presumably, NC would be set to 1 in the call to SFCDR, a test quickly made on the card, and then a call to SFCDS if the next card is to be read. Note that SFCDS just starts a read operation; it performs no actual reading and, in fact, has no effect if the next card is already in the process of being read. CALL SFCDF c This call causes a wait until current card operations are complete and then initiates a card feed (with no read taking place at all) on the next card. Note that if a card read operation were under way at the time, then the next call to SFCDR will convert that card and not the one after the card being fed through. CALL SFCDP(NW, OAREA) where NW OAREA ,0 contains the number of words to be punched (see SFCDR) contains the characters to be punched (see IAREA above) If a card read was under way at the time of this call, then the read is completed, the punch data moved into the second buffer, and the punch operation initiated. A call to SFCDR at this time will cause proper conversion of the card that was read (and which has already been punched by the call to SFCDP). If, however, LS1&W1!GWlMJ J.C"J#.ifIi'Ifi"I/'A '.~" "". 9· another call to SFCDP occurs prior to the call to SFCDR., then the call to SFCDR will cause conversion of the data that was punched into the second card via the second call to SFCDP. c Note that this routine always keeps track of whether the next card read has been started or not; hence, it is unnecessary to call SFCDS at any time unless the obvious resultant speed increase is desired. o 10. c SPRNT This routine contains three entry points; SPRNT, SPRPT, and SPRPC and is used to obtain high speed line-printer operation from a FORTRAN program. Double buffering is not used because it would result in only a very slight increase in speed at a cost of an additional 60 words of storage. The calls are as follows: CALL SPRNT(NW, OAREA) where NW contains the number of words to be printed (the number of-characters must be even and is 2 OAREA * NW) is a one-word integer vector containing the characters to be printed, packed two characters per word as in the conventional A2 format The print operation is started on this call and a wait for completion occurs either on the next call or on a call to either of the following routines. CALL SPRPT(NC) where NC o is returned as a 1 if a page eject occurred after the last line was printed and is returned as a ¢ otherwise. Use of this routine will cause a definite degradation in the printer speed. Generally, maximum speed will be obtained if.an internal line counter is used to control page overflow. At any rate, the call to SPRPT should be made immediately prior to the printing of the next line (via a call to SPRNT). Note that the page eje~t to the top of the next page (channel 1 punth in carriage control tape) has already occurred automatically if NC is returned as one. 93 Ii I 11. CALL SPRPC(NC) , ,) C where NC contains a code for printer forms control. NC is multiplied by 16 and transferred as is to PRNTI (see Subroutine Library Manual) for printer control. Thus NC = 16 will cause an immediate skip to channel 1 and NC = 2¢8 will cause an immediate space of 1 Note that the forms control command is merely initiated by this call; it is completed on another call to any of the above entry points. I j I· II 12. FINAL NOTES 1) All of the above sets of routines operate independently of one another (except that SFCDR or SPCDR may be used, but not both by the same program). In general, their operations overlap one another with no problems and they have been used in a number of applications with no difficulty. 2) All sets of routines contain internal buffers into which the characters are moved prior to a call to the proper I/O routine. Hence the various character vectors may be operated on or changed immediately after a call even though the operation may only have been initiated. I C' 3) Since two of the sets of routines may have I/O operations under way concurrent with computation, PAUSE may not work (Modification Level 5 should work, I hope). It it does not, then use of IOND (in CSP Version 2) is suggested. 4) I will be happy to send out binary decks, but may not get around to submitting programs to COMMON for some time. I personally do not feel that there is anything unusual or complicated about these routines and make no comparisons with IDEAL or CSP, Version 2. They were written for our purposes and as a result have features peculiar to our needs. It may easily be that these features are wasted in your application. " "" =~u;'n 1"t""" "!"''''. '"'~"'1·'~··'~'···""·"·!" .,~ ..,.",. '·,~~,;~::,~;,:;:':.:,';:I·,;,;'-",.;; ,. i :1 II ASM *L.IST *PRINT SYMBOL TABLE OOOR 225(3119 0000 22645644 nOBB 225(3117 OOO{) 1 0001 a 0002 0 0003 01 000:: 0 OOOe: 00 0008 01 ooaA 0 OOOR 1 oooe OOOD OOOE 0010 0 0 01 00 0012 01 0014 20 0015 0 0016 1 0017 1 0018 0 0019 0 OOIA 0 001B a oOle 0 0010 0 OOIE 0 00lF 0 0020 0 OO?l 0 0022 0 0023 0 0024 01 OO?6 0 0027 0 O()28 0 0029 0 002A 0 0028 01 002D 01 OO?F 0031 0032 0033 0034 0036 01 0 0 0 01 01 0038 0 0039 0 003A 0 003R 01 0030 0 003E 01 0040 01 0042 0 0043 01 0045 0 0046 01 - - - - - - .. ~-.-----.--- - 0001 6973 6A74 65800000 6905 (5800000 D40000DF 700D OOO( 6968 6A69 6580000B (5800000 D40C)onDF 03059131 1000 OODF OODA (061 D061 (101 D03E D027 (102 D042 (103 D05S (104 D05A (056 D480007D (057 [')057 6100 C050 D055 6680007F C60000DF 4(040c)2D D04F 62(E (04D F6000162 4C18003E 7201 70F9 e043 D480007D 62CE C6000194 4(1c)0048 C03C 95000045 E03( EEOO0194 -_. . ENT SPCDR ENT SRERD ENl SRERD DC. STX STX LOX STX LD STO i--1DX speDR D( STX STX LDX LD STO LI8F D( SPCDP .- 1 EXIT+l 2 11 1 II EXIT+3 SRERD SPCDR L IAREA ~DX I\1DX LD STO LDX \1ATCH LD sse LD IFADX S AND --.------~--- or~ - REREAD CARD ItJ I TH NEW FIELDS C 0 RETRY * 1 EXIT+l 2 EXIT+3 I 1 SPCDR I1 a L IAREA CAROl (ALL SP(DR(!-.J(,IFV,IFTV, IAREA,l\It::.RRC) 11000 IAREA ERROR ZERO EF ·· • " . _o.:;,~....;;:...::..:-.w-;,;,.;;.;. ,,',""WI.... ,,'~ ..,".. ,I~,' ••• "'.',,'."IItb' .... ,I,',IIIt~~oIjnft".i.""'.,(10 ..,,, ..-......- rJAGl:. 0171 0172 0173 0174 0175 0176 0177 0178 0179 O17A 017R 017C O17n n 1 7F' ()17r:: 0 0 0 0 0 0 0 f)( 140C3 C DC DC DC D( DC IL+OC4 f) 140(5 140(6 140C7 140C8 140C9 IAODO IAODl IAODZ IAOD3 IAOD4 IAODS J 6 C. 01J0 F c; u 710 H J"73u f)( 0 AODO ADDl AOD2 AOD3 AOD4 AOD5 () AClD6 f)C () AOD? AOD8 DC DC GC DC DC 0 0 () 0 () 0180 0 OlRl 40(3 40C4 40C5 40C6 40C7 40C8 40C9 () 018;:> 0 ()1 P·3 0 n 1 r~ 1+ r) QIP5 0 o l'P6 ()l P 7 0 AOC)9 40E2 40F.3 40E4 4UE5 IJC DC DC f)C DC f)C ,)C n1R9 () OlPA 0 nlRR. II OlRe 0 OIRO 0 OIRt" 0 4CH:.9 C DC DC DC DC 2UFO ?()Fl 01 P,F 0 ()190 0 ()lql n 0192 () 20F5 20Ff; 7UF7 ?UFH 0193 0 20~9 0 OlAR 0 01Q4 '+Ol:.6 40E7 40E8 20F2 20F3 20F4 ::> I) IAO'.J6 I A () [) 7 IAGDS IAOD9 140E2 14G::'3 140EA 140t.5 14016 140't.7 06du JILli I (-LEi~U 'j.J ) J K J 7/-+'0 J7':J0 v 76":' U7/U u I C3 J 07')0 L fVi roJ ~)tiUv 0 P U vdlu ;~ 0840 S uo:JiJ 0dlU 0b .:JG T v~60 U i...;b V U cH~ V ""X 0'jU.j (v vb')J II+OER y 140tSl 1 DC 12~)FO J J DC DC 120Fl 120 f:2 120F3 120F4 12:JF5 12DF6 12'JF7 120F8 IZOF9 1 \";'14lJ '')'7:;-..) f)( DC DC r)c )C DC DC C 'J'71U Uy~...; J.. 2 3 '-;lj\"! v>7bv Ii 5 0'-) -Iv U:.1dv (; J'-J'7v 7 lvGv f1 lu,lu .i. ij 2. iJ 9 F. r\J I) 100 ,~\ \~ ~YMBOL C 007F 0056 EXIT 0074 IFADX 0043 MSKCH 0083 PLP 0097 PSTO OOBF SRCH OOD6 ZERO 007A ceNT CKEF CHAR EBCeL. EXITP LOOPA MSKCT PLPA RETRY SRERD 0081 0162 OOBA 0028 0084 OOAl 0018 0000 CHARLo EROAD IARAD LOOPS NOTS PLPR SLCH rSTLC TABLE 0130 007D 007C 0033 0048 009E 0085 006A CHTYP 008U ERRIC 0078 IAREA uODf MATCH OO.3E OFAD 0060 PMAT OOAB SPCDP 008t3 TSTPF aace. NO ERRORS IN ABOVE ASSEMBLY. ie /0/ eKEC 0066 ERROR OODA IFAD 0059 MSKAB 0082 ONt: 007E PREID ooce SPCDI~ 0008 TWO aUD~ PAGE C: :'1 C 0 0045 0046 0047 ()O49 004A 0 0 01 20 DOF7 COOE D4800048 03059130 1000 0 [)04B 1 004C 004C 01 74FF003E 004E 0 1000 004F 01 4(80003F 0000 0052 0052 1 OO~8 0053 1 OOEA 0054 0 0001 0055 0 0050 0056 0 0028 0057 1 0058 0058 0 (OES 0059 01 4410003F 0058 01 4(800057 0050 1 005E C05E 0 6931 005F 01 658000;;D 0061 0 (101 0062 0 0018 0063 00 (5800000 0065 0 90FO 0066 a 4830 0067 0 1010 0068 a 80ED 0069 0 DODI r06A () 7102 006R 0 6926 006e 01 4(08008F 006E a 1001 006F 0 DOIB 0070 0 6100 0071 0 (8EO 0072 a 18DO 007'3 0 D8DE 0074 0 DOlg 0075 0 80DE 0076 0 D013 0077 0 80(3 0078 0 D01J 0079 0 D006 007A a (010 0078 01 D480008E 007D 01 (400a07F 007F 01 D5000081 0081 0 7101 0082 01 74FFOO7E 0084 01 74FFOO:3R 0086 a 70F6 0087 20 225(5144 00R8 0 0001 aOSA 0089 1 008A 1 008B 0088 1 008C 008C 20 03059130 008D 0 2000 RAD STO BUFA LD STO LIBF DC K80 DC MDX NOP BSC BUFAD BSS DC RAD CARDO 11000 ... L. eCNT,-l I E 0 RCD CBUFA DC CBUFB ONE DC D( 1<80 K40 DC SFCDS DC 1 80 40 *ceNT L..D aSl as( SFCDP DC STX LDX L.D STU LD S BS( SLA A STO (\1DX STX SS( PFAD PTAD SLA STO LDX LDD RTE STD STO A STO A STO STO LD STO LD STO * I 1 SFCDP 1 1 PFAD+1 I1 0 K40 -z 16 K40 W(NT 1 2 1 PEXIT+l L. P'~ESI ,+ 1 PCHCN 1 0 BUFAD 16 BUFAD PAD ONE P(FAD+l v'l(NT PCFAD PTAD+l PCHCN PAD I L Ll I\~DX 1 L MDX L LIBF DC PCFAD DC D( PCH(N DC LIBF DC SF(DS 1 PRESI+l \1DX rv1 DX RCD.- L. I * *1 PFAD+ 1,-1 wCNT,-l PFAD SPEED 10001 * * *CARDa 12000 /03 2 ,~-----,",.-----"",,, ...,",.,," ~~------- PAGt:. OORE 1 008F 01 ()O91 01 0093 1 0094 20 0095 0 009A 01 0098 OOEA ()1'1( 008F 65000091 4(O()OO93 009't 03059130 3000 4(800093 0052 0052 PAD PRESI PEXIT SFCDF DC * LDX Ll * Bse L * DC *CARnQ LIBf. 13000 DC SFCDF sse CRUFA BSS eBUFB BSS END 3 ,~) ~, 82 82 () /o~ I \' I.: SYMBOL TABl.E 0 ~UFA CFAD FAD 0030 002A 002D PCFAD 0089 PTAD 007F SFCDP 005D NO ERRORS 8UFAD 0052 CHeNT 002C K40 0056 PCHCN 0088 RAD 0048 SFCDR 0000 CBUFA 0098 CODE 003' K80 0055 PEXIT 009l Reo 003F SFCDS 0057 eBUFB OOEA CONY 0028 ONE 00S4 PFAD 007D RESIR 0037 TAD 002F IN ABOVE ASSEMBL.Y. c o lOS ceNT EXIT PAD 003E 0039 008E PRESl 008F SFCDF 0093 weNT 0036 ~. I I ASi"1 *L.IST *PRINT SY~BOL TABLE 0000 225D9563 0072 225D95E3 0080 225D95(3 0000 1 0001 0001 0 6929 0002 a 6A2A 0003 01 65800000 0005 a (101 0006 a D018 0007 20 176558F1 0008 0 0000 0009 0 70FC OOOA 00 (5800000 OOO( 0 0028 OOOD 0 9023 OOOE 01 4C080012 0010 0 (020 0011 0 D023 0012. 0 COIF 0013 0 8021 0014 0 801E 0015 0 0008 0016 0 6200 0017 0 7102 0018 0 6916 (016 0019 0 001A 0 D019 001B 0 9019 001C 00 D4000001 001E 01 (6000020 0020 01 ·D5000022 72,FF 0022 0 1000 0023 0 0024 0 7101 0025 a 70F8 0026 20 176558F1 0027 0 2000 0028 1 0035 0029 1 008F 002A 01 6500002C OO?C 01 6600002E 002E 01 4COOO030 0030 0 0000 0031 0 003C 0032 1 0035 0033 0 0001 0034 0001 0035 003D 0072 1 0073 0073 0 6987 0074 01 65800072 0076 20 176558Fl 0077 0 0000 0078 0 10FD 0079 0 COBA 007A 00 D5800000 007( 0 7101 007D 0 6981 007E 0 6AAE ENT ENT ENT ~~~..;:u.--'-."-~ SPRNT SPRPT SPRP( * EXIT+l EXIT+3 SPRNT 1 t<'lFOA+ 1 PRNT1 10000 TSTPL 0 OAREA CaNST *+2,+ CaNST OAREA OARAD OAREA ONE i'v1TOA+ 1 0 SPRNT DC STX 1 STX 2 LDX I1 LD 1 STO TSTPL LIBF D( t,1DX LD I1 STO S Bse L LD STO LD A A STO LOX 2 MDX 1 2 STX 1 EXIT+5 LO ZEI~O STO EPGFL OAREA S STO L. 10001 MFOA LD 1.2 * MTOA STO L1 * MDX 2 -1 S.LA 0 MDX 1 1 MDX MFOA LIRF Pf~NTl DC /2000 DC OAREA ERi~OR DC EXIT LDX L1 * LOX L2 * BSC L. * ZERO DC 0 CONST DC 60 OARAD DC OAREA ONE DC 1 EPGFl. BSS 1 OAREA BSS 61 SPRPT DC * STX 1 EXIT+1 LDX II SPRPT TSTPF LIBF PRNT1 DC 10000 MDX TSTPF LD EPGFL STO I1 0 SPREX MDX 1 1 STX 1 EXIT+5 STX 2 EXt T+3 ••• "-'-.".'-"--'-' .. --:.:.~:.:.:.:.:,;;;~-~~:.;.;.;;.:.;.. :..:;,;~.:';':;,::,~:,: - .- r~", SPECIAL FOr~TRAN PRINT FOR ACCOUNTING SUBI~ V) ", C 0 10' I"" I.I~ II I -----------~----~- pE'S PAGE 0 Q07F 0080 0081 0082 0084 0086 0087 u 1 0 01 70AA 0081 69A9 65800080 00 (5800000 1004 0 0 EOOS 8005 0089 0 0001 008A 20 176558F1 008B 1 oose 008e 0 70EF 008D a OFFO C08E a 3000 008F 1 0090 0090 0 COA2 0091 0 DOA2 0092 01 4C80008F 0094 0088 0 MDX SPRPe DC STX L.DX l.D Sl..A eXIT * 1 EXIT+1 11 spa?c 11 f) A- MSK AND A STO CCWD C(DWD PRNT1 l..IBF ceDWD DC MDX De ~SK CCWD DC ERROR DC *SPREX 10FFO 13000 *ONE LD STO sse 2- 1 EPGFL ERROR END c o 107 uamttklW, , ,. \ , . 4M~44M : q . - ,. , --- 4.. #. #44#.. .. &W!W.!#k#¥iMf&hMAI1I!f.I:MQA.,· n_. :1 :1 SYMBOL TABLE CCDWD 008B EXIT 002A OAREA 0035 SPRPT 0072 CCWD I'v1FOA ONE TSTPF NO ERRORS IN ABOVt 008E 001 E 0033 CaNST 0031 MSK 008D 0076 TSTPL 0007 SPI~EX 007C EPGFL 0034 0020 SPI~NT 0000 ZERO 0030 MTOA ERROR OOaF OARAD 0032 SPRPC 0080 o ASSE~BLY. c' I i 0,1". 10 f' ---~-------~---------------- .t 'W.:temWm'!!t1!!!!77!?I!7!!Z'""Zr SESSION NUMBER T.1.4. SPEAKERS J.L. TUNNEY, JR., CHAIRMAN S/360 HARDWARE COMMITTEE f I DISCUSSION THE MEETING CONSISTED OF A SOUND-OFF ON HARDWARE PROBLEMS, AN INFORMAL SURVEY OF MINIMUM CONFIGURATIONS THOUGHT TO BE REQUIRED FOR VARIOUS SOFTWARE PACKAGES, AND A SURVEY OF USERS OF NON-STANDARD EQUIPMENT. f \ I l Ie I 109 .,14(1.'&;; u.::a ,,,.,, _._ ,.# H REPORT ON MEETING OF SYSTEMS DIVISION, 360 PROJECT, HARDWARE COMMITTEE - 9/7/67 Attendance: Approx. 100 Chairman: James L. Tunney J. R. Ahart, Inc. 627 Salem Avenue Dayton, Ohio 45406 Telephone 513 - 278-4754 The first meeting of this committee since its organization was divided into three sections: 1. A discussion of users' hardware problems and how they hav~ been remedied. 2. A discussion of software systems and what mlnlmum hardware requirements have proven to be in practice. 3. A survey among those attending of new or unusual equipment that they might have on their "360". SECTION I - HARDWARE PROBLEMS ~\ "1442" Card Read-Punch V The majority of the complaints about this unit involved an apparent lack of checking circuits. Reports included machines that would punch and read without cards, others instances where the program would proceed normally without the punches actually going down, and still other problems of punching without feeding the cards. One user having both a "1442" and a "2501" found that in order to "CATALR" from the "1442", both SYSIN and SYSRDR had to be assigned to the "1442". "1443" Printer Most problems with the "1443" were evidently blamed on static electricity by the FE's. One suggestion was to install a humidifier, another was to hang tinsel on metal frame over which the paper moves, a third attendee mentioned that the box of paper must set on the steel frame. Richard Pratt said that their printer could throw the type-bar without leaving the ready state! I "2501" Card Reader I Four attendees reported that dust accumulated in one of the read stations and caused frequent read checks. It was felt that on heavily used equipment once-a-week PM was not sufficient to relieve the problem and a design change is needed. I/O o "2540" Card Read-Punch Read-side: One person reported a machine that read 1200 cards per minute instead of 1000/minute when delivered. This caused excessive reader checks and proved difficult to find. Punch-side: Three installations reported excessive numbers of partly punched holes without ,punch checks. New dies proved to be the only effective remedy. "1403" Printer One user reported that on the QN print chain which is the FL/I set with 45 preferred graphics, the single quote mark is a nonpreferred character. The net result is that any line having an apostrophe prints at 330 lines/minute instead of 1100! Another reported an oil leak that took 3 days to fix. Moral-put a pan under it! Another installation reported that transfer of static electricity from a belt to a wire resulted in character substitution. "2311" Disk Drive o Six users reported oil leaks or hydraulic problems. Several more said they frequently couldn't I.P.L. from certain drives. One said the fix was to power the "2311" down, -slam the lid, and restart it! Of more serious concern was the report that I.B.M. is currently installing desensitizers on the heads of all "2311's". At least two people reported that they had problems reading old files after this engineering change. A theory was advanced that possibly old "2311's!! were aLready below sensitivity specs! "029" Keypunch Duplicating ECBDIC cards with or without the printing mechanism engaged is reported to damage the code plates. I.B.M. offers a special "024 TT for this purpose but the users felt that the "026" should be modified to do the job since it is the TT360" Keypunch! SECTION II - MINIMUM HARDWARE REQUIREMENTS FOR AVAILABLE SOFTWARE o T.O.S. No comment other than no amount of core will speed it up! D.O.S. 32K and 2 Disks should be minimum. D.O.S.-FORTRAN IV 32K D.O.S.-R.P.G. minimum. 32K minimum. II I D.O.S.-COBOL D.O.S.-PL/I 32K marginal, 64K adequate. same as FORTRAN - 32K minimum. D.O.S.-Bill of Matl. Proc. with COBOL M.I.T. Civil Eng. Pkg. Proj. Mgmt. System 64K and several disks. 128K and 3 disks (comparable to what used to fit on 40 or 60K TT1620 TT ! Rumor suggests 4 disks or 4 tapes! D.O.S. Utilities and Sort-Merge Good even In 16K! SECTION III - NEW OR UNUSUAL EQUIPMENT Record Overflow on T!2841 TT An excellent feature for $lO/month that is rendered useless by lack of software support under D.O.S. Storage Protect Out of 12 reported installations, 3 said it took 2 months or longer to get it to work! "1012" Paper Tape Read-Punch R.P.Q. AVlatlon, Denver, Colorado. Leonard Sites, Sunstrand r;\ "1231 fT Optical R~:;E. . Miami-Ddade qunbior cholle~e,. Miamlo, Florida d reported that tillS lS a goo unlt ut t at It lS on l y supporte ~ under B.P.S. Lack of D.O.S. support results in an unrecoverable unit check when D.O.S. is in core and someone readies the fT1221fT or other unsupported device! IT565IT CALCOMP Plotter on IT2701" Bethlehem Steel Company reports that l t runs at !z "1620" speed under this hook-up.! "470" CALCOMP Plotter off-line, 9 channel mag tape. Don McIlvain reports that 9 channel tape characters are very unusual and some extra BAL programming is required for this arrangement. IT2314" Disk Unit Lear-Siegler Company, Grand Rapids, Michigan. I.B.M. Visual Display Terminal Data Cell Also Lear-Siegler Company. Data Corporation, Dayton, Ohio R.C.A. Video-data Terminal Also Data Corporation /12 7: ::::n o SPF AK FP c:, PI\f\IFL fl1\! "r1 R SF L != C T J n 1\1 nFSCRTPTTflf\IS Tt\1 M Fin' IfVI Af\\I! PFRsnf\.If\.IFL T () SMA L L I t\1 S T l\ L L AT I fi ~,I S PAl II. R Tr. K F n R n. [) F P A II hI I J 1\1 J \I FRS TTY p ri P F R T C Cl R 1'.1 ELL, F F D. R F S. R Af\1 K, MI 1\1 f,1 F APn LIS n P. L. 1-1. R ,l\ K!= R, PIn (\11: F R H I - R R F rJ C r) Rf\1 r. n • n ~~. P b, I I L H F R lr-' J T 7, I. R • ~~ • c o 113 &&&&2&~.iMAU,g ar 11(,.. ." J!II q o Presentation Summary of a Member of a Panel on "Personnel Selection and Job Descriptions in Medium-to-Small Computer Installations". By Paul A. Bickford 11'1 !!iw'ennrmw C, INTRODUCTION ,. The comments below are centered around a small university (2,400 students) Computer Center which has an IBM 1620 20k, 1311 configuration for education, a compliment of unit record equipment and an IBM 1401 Sk, 3-1311 system for University Administration Data Processing. the main tasks of the installation are: Some of (1) Maintenance of a large Alumni file (2) Student Admission files (3) Registration {4} Grade processing and reporting (5) Maintenance of Student Information files and {6} Developments of Campaign Accounting files. The Administrative Data Processing group has always operated under a closed shop operation philosophy whereas the Education group has always operated under an open shop philosophy. c) All facilities are located consists of eight people, one secr~tary, ~n one building. The Staff two Key Punch operators, one File Clerk, one Programmer, one Machine Room Supervisor, Part-time Delivery Boy and a Director. PERSONNEL SELECTION The procedures for hiring people are straight forward and derived primarily out of necessity because of a very limited reservoir of prospective experienced people. Attributes that the prospective em- ployee's must have is a pleasant personality and who is reasonably easy to get along with. installation. This is mandatory because of the size of the One is constantly rubbing elbows and communicating with another member of the staff and emotional friction here would be more detrimental in disrupting output than an ailing cpu. o / 15" &204=&.,:, J 4 .j ., . - PA . &&&"'. >.4 .. 4.. ..k&Wi&&HMl!IS.§#.L·· .. - _ _ _ _ _ _ •__,._ . _. ~~ _ _.................:--_,_ _ ~~ =.",.=" ....= ...... _ _ _ _ _ _ _ _ _ _ _ _........_.,,,,,,, ... ,...,. •.""", .. ","""'" ••"""".H"""""., .•. =. . .'".'"."'.'""'. ;.;,".;,.,;.;. .... ~~_~ i i:i EDUCATION A high school diploma is required. for the positions of: College experience is desired Programmer and Machine Room Supervisor. SEX Women are employed for the positions of File Clerk and Key Punch operators. Men are employed for the positions of Machine Room Super- visor, Programmer and Machine operators. AGE Women: 18 to 60 Men: 18 to ? depends upon persons experience and our needs. Presently, the oldest man is 31 years. JOB DESCRIPTIONS Because the installation is small, there is an overlapping of job responsibilities. Each person must perform numerous and varied tasks in order that continunity may be given to the flow of work thru the Computer Center. Sickness and vacations sometime present serious difficulties because the overlapping of responsibilities never seems to te adequately or properly defined. The job titles are general ones and the "other" tasks each person performs will be described. KEY PUNCH OPERATOR(S) Each must know how to operate the 548 Interpreter, 083 Sorter, 514 Reproducer, 085 Collator and the 407 Accounting Machine in addition to the 026 Key Punch and 056 Verifier. They must eventually become familiar with (know by heart) the field formats of 20 plus different 1/6 L ... _ o cards. On some jobs, the Key Punch operator will receive information directly in the mail, key punch and verify it, select the proper Interpreter board (and sometimes wire one) process the cards thru the 548 and then file them in the proper file. Many times the operator must refer to a master code book in order that she may supply neede source information codes to punch into cards. Currently, one operator is learning to program the 1401 in RPG language. FILE CLERK This individual primarily performs the task of hand filing updates to the 75,000 card Alumni file which constantly changes. Presently, this procedure is followed even though the Alumni files reside on 1311 disks,. and ::shortly this hand task will be eliminated. There are another 15 files that constantly change and the file clerk spends most of her C' time performing this function. However, she must also be able to Key Punch and operate the other Unit Record equipment when either of the other two operators are ill or on vacation. SECH.E'TARY Besides performing the routine tasks of a secretary ie, typing letters, distributing mail and filing etc. she must also be able to Key Punch and operate most of the Unit Record equipment. She also updates Alumni address changes in an Alumni Directory which is 3 feet thick. Code sheets that are sent to the Computer Center are supplied with additional codes (such as the student and alumni alphabetic identification numbers) by the Secretary. o II 7 ........... """ "..............................,......"'="'="., . . . .= ...= . . . . '."""'.".=. . . = . . . . . .= . ." . =""=="="". = . . . . .= . . . .=.....="."..=.....=""....=. =...:;; =.~ MACHINE ROOM SUPERVISOR Much of the daily routine is closely watched and controlled by the Machine Room Supervisor. equipment. He operates, wires and programs all He accepts job requests (verbally or in writting) and schedules them in a manner that will keep all equipment as busy as possible. With the many tasks that must "mesh" perfectly before a job is completed he must be constantly aware of the state of completion that each job is at so that work can progress along. This "art" of scheduling seems to work reasonably well in our small shop environmente The peak work periods seem to always present serious scheduling problems and sometimes some jobs get completely neglected for awhile. The Machine Room Supervisor carries the heaviest responsibility load in seeing that jobs are finished in a reasonable length of time and are well done. He often communicates directly with the Faculty as well as all Administrative offices. One-fourth to one-half of his time, approximately, is spent in programming the less complex "One-shot" jobs that occur frequently. PROGRAMMER Is responsible for programming the more complex jobs such as Development Fund Accounting, general Alumni and Student file maintenance. He frequently takes requests directly, does what ever systems work is necessary, writes and key punches his own program as well as assemble and test the program. On half of the jobs he is the only person who knows precisely how his programs function. Having only one person res- ponsible for major jobs leaves a small installation in jeopardy. The c. ·:' ...,,1 II e ~! Programmer also writes the operating instructions for all of his programs and is supposed to flow chart them also. He is also responsible for knowing the more intimate details of the IBM Sort Package, the Disk utility Programs and Disk File Organization routines. DIRECTOR Last, but I hope not least, the Director has the ultimate responsibility of the complete operation and he spends most of his time communicating with the various departments of the University and monitors the progress of new needed applications. Sometimes he plays the role of Programmer for a week or two, Machine Room Supervisor for awhile besides carrying on the usual routine of answering complaints (;. (we have a few) and carrying on with correspondence. a course in Basic Computer Programming. ~ I~ 111 He also teaches PROGRAMMER SELECTION AT THE FEDERAL RESERVE BANK OF MINNEAPOLIS ~ -1,<,-1 Cortte.11 OUTLINE sic StrJcture ...- ... Programming staff of our company can be broken down into 5 basic units • 1. Programmer 2. Procedures Analyst 3. Systens A~alyst B 4. Systems Analyst 5. Senior Systems Analyst Advancement along the scale follows naturally in that order, with the "prog:c a.J.lli"Ue:c" being the bas ic unit, or s -carting po int. v. Even from the beginning, a programmer must be trained as a high-powered individual in the many levels of work into which he may advance. His duties include: 1. Present job analysis. a. Discuss job to be programmed with supervisor or department head in charge of the operation to be programmed. b. Study and learn the "ins and outs" of the job by working with the clerk; acquire a thorough understanding of all facets of the job, including special operating methods, periodic, regular and irregular error procedures. 2. Program design. a. Determine program objectives through consultation with bank and systems personnel. b. Construct a flow chart of the work to be done by the computer. 3. Program writing/-cesting. a. Writes the progra.J.~ - ideally in anyone of several programming languages; selection of the one most suitable to the job. b. Designs test procedure and sees to the preparation by keypunche~5 of a "test-data deck". c. Run, test, debug program. 4. Installation/Implementation. a. Assist in preparation of operator manuals. o. Performs any necessary training of departmental and data processing personnel concerned with the handling of the job. ~!el~ ') 0.. o. ~iring 4.. Normal procedure is to assign new programB'" to a "system" when hired. Most programmers will also be required, from time to time, to help in the planning and programming of any special one-time shots. Techniques We :~ire on three things: 3) ability to learn. 1) Pat score, 2) willingness to work; and, C "I ,..,iIi /). 0 1 :tf rrrrrF5'" - 2 - B. o Requirements 1. Education - High school diploma with good record> indication of math interest. Any additional education, including college level statistics, economics, accounting, or even IBM courses in functional wiring or 'programming are considered; if absent, a willingness to take co~rse work to fill in the gaps must be present. 2. Previous experience. We promote from within and train ourselves. Expe~ience required varies with the job, and may be as low as none for a programmer, to 5 years or more of bank experience for a Senior Systems Analyst. We subscribe to the basic belief that "Persons with an aptitude for this type of work (programming) can usually gain job knowledge rapidly, but without the aptitude, no amount of experience will produce a competent programmer. 3. Communications - In all levels of work, a fair amount of communication with other bank personnel will be required. The importance of finding people'who are willing and able to communicate concretely and calmly with others cannot be over emphasized. In his limited supervisory level of work, the ability to communicate will be of great value. 4. Personal charactc~istics. a. Programming at any level requires initiative and ingenuity. People must be found with the ability to absorb through observation, to suggest and implement improvement. b. Programming is time consuming work, and requires a good amount of initiative to complete a project ~ schedule. c. Honesty important. As an employee moves into the level of systems analysis, his principal goal will be to devise improved methods, reduce costs and improve bank services. Among these as well will be the responsibility to provide safeguards against falsification and embezzlers, and against destruction - whether inadvertant or careless - of valuable records. o /21 22&LC£ili&;:;MI#Ii';." IWS;,,,4Ji#U '·MMWW\4#Mi, 4¥;,¥i .#4 ._ J ,~ o Management Installation Division ORGANIZA TION AND SELECTION by Dr. Paul S. Herwitz IBM Corporation Old Orchard Road Armonk, New York 10504 (914) 765 - 4543 () Thursday, 8:30 A.M. Text, 7 pages Graphics, 5 pages Oi" WUMttet:!!t!'fWt.' flT'W·· ., c. ~·· ·mw ORGANIZATION AND SELECTION ,;,1 Although in the final analysis organization is people oriented, in IBM we have a structure of jobs which seems to work very well in all of our programming areas whether the group is large or small. I will describe this structure to you in rather general terms without getting into a completely detailed description of the job responsibilities and requirements. As a matter of fact, this is an opportune time to talk about the subj ect because I have been involved during the past nine months in a study of the job descriptions that have existed for programmers for the last five years. We are just about at the end of this now, and are making a number of revisions. In order to describe the key positions correctly we conducted extensive interviews of programmers throughout the company, and as a r-esult the new descriptions give a pretty accurate description of the basic programming jobs being performed today. C\ I" ~ First of all (Figure 1) there are two ways to enter programming in IBMwith or without a college degree. Generally speaking the college graduate can have any degree although we prefer a technical degree. (A little later on I!ll give you a breakdown of the educational background of our people.) When the college graduate is hired he enters in a classification called pre -professional which is not exernpt from the Federal Wage and Hours Laws. Depending upon the division in IBM in which he is hired, our new pre -professional may have anywhere from six to twenty-six weeks of progranlmer training. The twenty-six week training course is populated by candidates for our programming systems activities. The first twelve weeks of this course are formal class lecture with some handson experience. During the last/ fourteen weeks the trainee is a member of a kind of prograrnming job shop, if you will, where he is managed by experienced programming managers and where :his assignment is to program actual applications on a kind of sub -contract basis. This is a type of very careful on -the -j 0 b training that is closely supervised by people who have extensive management and training experience. At the end of the twentysix week period, those trainees who have successfully completed their assignment (and not all of them do) are given a permanent assignment in one of the regular programming groups. Those new hires who do not go into the twenty-six week course, but who have a shorter term - six or eight weeks, receive formal lectures and, of course, some hands -on training. At the end of this formal training period they go directly into a permanent assignment with one of the programming groups. -1- /2.3 i&iIiLILM4&&MC;;;;.141 # ( I (; ;; ; , ( g pg ,GP¥14W; . 4 .A4.•. 40 n. Once the trainee has received his first permanent assignment, and from then on, he is under the direct technical supervision of an experienced pro-grammer. This experienced programmer will usually be someone with at least two or more years of experience, and may be the actual first line manager of the proj.ect. From this point on, then, the pre-professional's progress depends upon what he can demonstrate. On the average, after twelve to eighteen months, the pre -professional is eligible for promotion to exempt status. If he does not show that he is ready for promotion after two years, then we feel he is not eligible to continue as a programmer. This means either reassignment, or termination from the company. For the non college graduate, we have several programming technician positions which are designed to take care of two problems. The first problem we are trying to solve is that of taking care of the nonprofessional activities that go with every programming job. When I say non -professional I am really speaking in the legal sense as implied by the Fair Labor Standards Act; and I am not trying to raise the question of whether programming really is a profeSSion or not. Remember that to be eligible for a profeSSional exemption one must have as his primary duty IIwork requiring knowledge of an advanced type in a field of science or learning customarily acquired by a prolonged course of specialized intellectual instruction or study, and this work must require the consistent exercise of discretion and judgment. II Alternatively, the work must be II original or creative in character in a recognized field of artistic endeavor" and the result must depend IT prirnarily on the invention, imagination, or talent of the employee. TT Clearly there is much routine activity that goes along with all programming jobs but does not meet the definition just stated for profeSSional exemption. Some of these activities are for example, setting up job decks for machine processing, key punching correction cards, preparing in -put data for automated flowcharting, to sorlle extent generating data for program testing, assembling program documentation and writing procedures for the computer operator to use, and up-dating operating systems by use of specifically designed utility programs, and so on. USing these activities as a basis, we have defined our first technician level job to consist primarily of $uch activities. We think that one Programming Operations Aide can perform these duties for a group of about a half dozen full time programmers. (~ ~,~.y' -2- I" tiM !feet r"MMnWi!! '7 r Kl!IY'Z7 The educational requirement for this position is a high school diploma. This is a new position that has been in existence in IBM for less than a year, and it is frankly experimental. We wonrt know for another year or two just how well it will work out. If the candidate has college credits but no college degree, after his initial training period he becomes a Programming Technician. The job of the Programming Technician includes some of the activities of the Programming Operations Aide, but also includes coding of well defined sub -routines from detailed flowcharts. At the top of our technician path we have a Senior Programming Technician. His duties are primarily to flowchart, code, and debug complete computer programs from well defined specifications. These programs are usually at the level of routine utility programs, and are essentially always self-contained. The Senior Programming Technician is of course also responsible for the documentation of his program, and more or less for the installation of the program in an operational enviroment. The second problem we hope to solve by use of the technician career path is, of course, the problem of scarcity of qualified programmers. We hope to attack this problem in two ways. First of all, if indeed we do succeed in defining the non -professional activities that accompany the program task and in delegating these to our technicians, then we have relieved the profeSSional programmer of some of his less productive activity; and he will devote, his time to more creative tasks, such as systems specification and design. The net result then is to let the more creative programmer spend more of his time in creative activity, thus increaSing the total productivity of the entire programming group. Secondly its clear that many of the non -professional activities I have described don't require the attention of a college graduate. Thus, use of the technician positions permits us to consider a group of prospects that is much broader than we could consider without these positions. Our first level technician requires only a high school or prep school diploma. The top level technician requires two years of college or the equivalent. We think the technician career path is quite good -the first level techllician, the Programming Operations Aide, can either learn programming, or can go into machine operations. The top level technician, the prograrnming specialist, is certainly sophisticated enough to go into operations management of a reasonably largecomputing center. On the other hand, if indeed he truly demonstrates a keen understanding of programming, and if his manager makes the business -3I~S judg-ment that he can be successful in programming, then he to can be considered for promotion to the same exempt position to which we promote the pre -professional. This is not a loophole; it is up to management to present evidence that the man truly has learned enough about the job that he can be expected to perform in all ways as well as the pre -professional who was promoted. Our statistics show that some twenty or twenty-one percent of our professional programmers do not have a college degree. c Our first key position, then, is that held by our first level exempt programmer. Traditionally he is known as an Associate Programmer. The position is key because the Associate Programmer must truly demonstrate that his career lies in programming. The next key position, and probably the most important one we have, is a position at what we call the staff level (Figure 2). There are really three jobs at this level - all equally important to the company, and all comparably rewarded. It is at this level that our first true manager appears. This Project Programmer is in all respects a manager; he is responsible for hiring, training, supervising, salary administration, promotion, and firing. We expect him to be technically qualified to direct a project, and to be fully involved technically in the programming activities of the project. Ideally he manages a group of six to ten programmers. If the group is small, he can spend roughly seventy percent of his time in technical matters, the remaining time being given over to administrative and personnel activities. If the project is larger, then he will typically have in his group a programmer at his own level who will act as a project leader. This project leader is called a Staff Programmer and is the second of the three jobs I mentioned. The project leader has all of the technical responsibilities that the proj ect manager has, but does not have the administrative and personnel responsibilities. Roughly half of our staff level programmers are managers, another quarter perform the proj ect leader duties, and the remaining staff level programmers -the third job-act in the classical staff capacity that is, they perform as an extension of management. Generally speaking they act as trouble shooters, as gatherers and analysisers of data, as technical consultants, and to some extent can make decisions when the authority has been delegated to them. They also double in brass as proj ect leaders when circumstances warrantusually for short periods of time. -4- I, o We are organized this way because we want our projects to be small, and we think the person in the best position to perform the managerial duties is really the leader of the proj ect. After all, he is the man on the spot who is in the best position to know the capabilities of the people who work for him and, therefore, given adequate training, he is in the best position to make the managerial decisions that relate to his people. The use of the Staff Programmer as a project leader is really a compromise. Since IBM's programming activities are expanding almost as rapidly as .the programming field itself, it is always difficult to find people who are well qualified to assume the combined technical and administrative responsibilities of first line management as we conceive it. Moreover, many of our technically qualified people are just not interested in becoming managers. Thus there is always a scarcity of first level managers and we are faced with the necessity of using technical project leaders. The problem we have to guard against is that if a proj ect grows too large then its first level manager may tend to shift the administrative and personnel responsibilities onto the shoulders of the project leader. The proj ect leader then becomes a manager without portfolio and without accountability. ~ !,'I I I , '\ I c From the technical standpoint, the project manager or project leader works from objectives. He is responsible for a complex project, and he is responsible for specification, negotiation of interfaces, implementation, documentation, the whole works. In general, he is not responsible for the total programming system or large application, but for a complex but recognizable sub-section. Typical examples would be a FORTRAN compiler, a set of mathematical subroutines, etc. The total systems or applications responsibility rests with the next level or even the one beyond that. I won't go into detail about these next two levels except to say that we have both managerial and non managerial positions at these higher levels as you can see from Figure 2. We have dual promotional opportunities in the managerial and technical activities. A little arithmetic (Figure 3) will show that if we restrict the project manager to a group of six and if we restrict the second and third level managers each to having six managers report to him, then if we include the managers in our counts we can take care of a group of fourty-three people with only two levels of management and this grows -5- 12. 7 ~~~~~----------.--.------,-~~~~--- to 259 people if we have one third level manager. Analogously, if we allow each first level manager to manage ten people but still say that a second or third level manager may only have six managers reporting to him then the three levels of management include 403 people. In the first case if the ratio of people to first level managers is six to one then the overall man-manager ratio comes out five to one. If the first level ratio is ten to one, then the overall ratio becomes slightly more than eight to one. I have just one more comment on the responsibilities of the proj ect manager. Clearly if the programs to be written are not so complex as to require six programmers or more on the particular project, there is no reason why a project'manager may not have the responsibility for implementing a number of small programs. In this case he still manag es a small group in which one or more of his programmers are responsible for a complete program. We think the entire structure is quite flexible, and have found that it works very well for us over a variety of technical activities. As I promised earlier, I want to show you a breakdown of the educational background of our programmers as of the end of 1966. Figure 4 shows the educational level and Figure 5 the field of study of our exempt programmers. Four percent of the records I consulted did not give the educational level, and fifteen percent did not carry the field of study. Otherwise, the figur~s should be self-explanatory. Finally, I'd like to turn my attention now briefly to the question of selection. I say briefly because I don't have too much to tell you. I have talked about our educational requirements. Beyond this, all inexperienced candidates are required to take the current version of the PAT test. We are presently involved in a study which we hope will help us better validate the PAT test and which we hope will also give us a lead on other tests which might possibly be used in the selection process. Presently our study has given us ample indication that we don't understand all the ramifications of the PAT test. This test was originally validated against performance in training programs. It has never been satisfactorally validated to my knowledge in IBM against actual programmer performance. We are attempting to do this now, and will make the results available after the study is completed. 1 ( ~ . I lIII l' -6- 1·'1,1.: II: r i , {~::: , ," l, j ~ nn'tf'tttwttlUt1!trr--: c' ,rrl! We also have indications that there will be one or two other tests that might be very useful in predicting whether or not a programmer will be successful. Unfortunately, at this point in time it is premature to discuss our findings. Again, though, we will be happy to make our information available when the study is complete. Beyond this, I can only tell you that the judgments you must make when you hire programmers are bound to be subjective. In my own experience I have found that the interviewers who are right more often than wrong in the subjective judgments are the interviewers who are most people oriented. In lieu of any other more objective indicators, I think you must select as interviewers those people on your technical staff who appear to be most sensitive to the people around them. -7- o =. . ." .. ~,..""""" ..., .• ".... = ~ .... " "",,,=~,,,,,-~=".~,-,,.-=,,="'~" ". . . . . . . .- -.... .. ~.-- ,-~-- .., .------------, I ]) P OphS. L.-y___ ,H~~t.1 ___ J ,,~ \ \ ,,/ \ r---~---, I ~I)\(t~~ I Op.,s. I L __ jf ___ .J t ( Tra\vaee. ) / 1l' / / Go 'I~e )eCflr~~ (-rra\~ee ) 1l' U-'i&cr.c..\t Dol ) I t> 10 "'i ~~ C "''') /30 -- --~-,-~-"---' '_. ---, "._,,------,------,---" I,,, o EXEMPT PR06-RAMHlNG- 1>OSITloNS o /3/ \ ~t f,..>2.u-el ~ 6 tao) (10) ,,• L , • \ The~ !f rV"tl .. t:.~n~~ S~i Li\70\ ~~l\ ( rJo""I'''\Vs tv.-t I-'C,,&\ ""'\'" - -"I -- T) NO\!\" ~«¢l vs AU Mtts ( NOM· v>\fars AU &\CtVS - -saI -... f) coo., /32 o -PROGRAMMERS \)\f fDf)cAtlo~ LfVE"L !l! Assoe,aie of Arls 2. Co lI~te Gved.t, vao d.et~e~ 11 q No - c.ott~te. ~yedtt 1'"5 ~e BA O~ 1\S 5"1' HA C~ MS 1>,,) l'f -I l' o 133 I \ /r..", ~o7/ C I •• I,~ 13J.1 :j{ r o PRO~RAMMfRS ~\f FIEL'P C)f STt> DY -010 Bu.~.~e\s fcl,-"a:ho" 2- E" t&'~..et.~~ J:,,,,~ &\\d Apphed Arts IS- t,.., beY'a I Ayts i CI IO.t MatlA .sr Ifl ') Sc., ... ~c.~ ! t~ !O /35 SESSION NUMBER T.2.1. SPEAKERS DAN FULLAN (IBM) PRESENTED WM. GARRISON (IBM), MODERATED BY D.R. MC ILVAIN DISCUSSION PRESENTATION ON PL/I BY IBM, INDICATING THE INTENT OF PL/It USAGE & EXPERIENCE TO DATE, AND FUTURE PLANS (INCLUDING ADDITIONAL PUBLICATIONS FOR USER EDUCATION). FUTURE PLANS FOR PL/I UNDER DOS INCLUDE 1. ADDITIONAL DOCUMENTATION 2. INCLUSION OF INITIAL ATTRIBUTE 3. SCIENTIFIC SUBROUTINES WILL BE AVAILABLE FOR OS PL/I AS TYPE 3 SUPPORTC' 4. EXPANSION OF OBJECT TIME DIAGNOSTICS 5. CONSIDERATION OF CREATION OF IS FILE UNDER DOS PL/I. 6. SIFTS FROM COBOL OR FORTRAN ARE BEING CONSIDERED. 7. PL/I OBJECT PROGRAMS WILL BE AVAILABLE FOR OBJECT TIME EXECUTING IN FOREGROUND UNDER RELEASE OF DOS SCHEDULED ~\ FOR 4 1 6 8 . ' , . ) THE PHILOSOPHY BEHIND PL/I HAS BEEN THAT SUPPORT OF EXTENSIONS IN 3RD GENERATION EQUIPMENT & TECHNOLOGY WOULD BE MADE PREFERENTIALLY INTO PL/I OVER FORTRAN OR COBOL. /3b i SESSION NUMBER T.2.3. SPEAKERS LAURA AUSTIN DISCUSSION VOLUNTEERS WERE SOLICITED FOR SERVICE ON THE THE NOMINATING COMMITTEE, EXECUTIVE BOARD, AND PROJECTS. THERE WERE 10 PEOPLE IN ATTENDANCE. NAMES WILL BE REFERRED TO THE APPROPRIATE PERSONS. C~ 10 /37 ____.,._ .4... .eM ... L¥T4$!? Wli,q..iili¥dJ-· I I i SESSION NUMBER T.2.4. SPEAKER S BRIAN SWAIN OF SHAWINIGAN ENGINEERING SPOKE ON THE 1130 SING~E OISK SORT PROGRAM. W.C. BLACKNEY OF DOW SPOKE ON RUNNING A MEMORYSCQPE 'THRU THE 1130, 1627 PLOTTER ATTACHMENT. DISCUSSION LARRY WHALEN CHAIRED THE MEETING. WE HAVE DECIDED TO ESTABLISH A COMMITTEE TO INVESTIGATE FORTRAN AND MONITOR V2. THIS COMMITTEE WILL BE FORMALLY ORGANIZED AT A LATER DATE. /3(> I' I () PMERG - A FAST SOff!' -MERGE SUBROUTINE FOR IBM 1130 by B. J. SWAIN THE 0' SMW"INIGMT ENGINEERTITG SEFTEHBER COMPANY LIMITED 1967 / 3 ~_ ~~~~ _ _ _ _ _ _ _..._ _ _'_"'_""......"!_"'.=' ..!,"='"'"'="''''=''"'''"","''K'''''''"''=''''"''''''';;;;'''=''"_" ~~~'"' _ _ _ __ -18Appendix 2 PROGRAM S'l'RUC1I URE The follcv.'ing prosra7l1s s.re included in the package: PMERG Principal subprogram, calls Sn:.rPH and MRGP!! to perform sorting and merging operations respectively_ SRI'PH Extracts keys from records. operation. Perfor-ills sorting Hakes up a file containing sort keys and pointers to records included in the sort. }.n~GPI-I Performs merging opet'B,tion. Outputs the file of pointers to records in the main file. !FTSK Function subprogre :=1,2 C 203 DO 209 IX=1,3 IP( IX)=IGHST(JG) ro{ EXT IX)=IG~ST(JG1) JG~JG+l 209 JG1'=JG1+l IF«~YTP- 214 CALL 2) 214,214,213 SD(~,P,Q) IF(Ii\jT(~)) 290,201,299 213 IF(P-Q) 290,201.299 C CO~PARE ALDHAgETIC KEYS 20~ (L=~EYS{~,!K) CAL L ,~ IF( IR) 207 C8 ,1,1 P \ r GH S T( J G ) , 1 , I G:~ S T ( J G1 ) , 1 , KL , I R ) 299,287,290 JGI~(=(KL+1)/2 i\;( JG=JG+J(;I JGl=JG1"'JSI,\:C c <::YS ~~:: ID:::':TICt.,L I F ( :CJ l - <~ 2 1 2 9 1 , 2 9 1 t 2 9 2 29: I=:<~Y!<1 29: IPTS{=l --_._-,--- ?92,291,291 172 o " -29- o PAGE 02 299 IF(KEYIK) 291.292,292 292 IPTSK=2 RETURN END FEATuRES SUPPORTED ONE WORD INTEGERS COQE END OF o FOR IPTSK VARIABLES REQuIRE~ENTS CO~~ON 0 22 PROGRAM 312 CO~PILATION 173 ·30II FOR *ONE WORD INTEGERS *LIST SOURCE PROGRAM SUBROUTINE DOPENCIBUF.N,J,L) iHIS SUBROUTINE OPENS A FILE BUFFER.SETTING INITIAL VALUES C THE FILE CONTROL WORDS. o TO C C C C C DIMENSION IBUF(325) ISUF = NAME OF FILE BUFFER N : FILE NUMBER J = CORE RECORD LENGTH L = NUMBER OF RECORDS IN BLOCK C IBUF(l) IBUF(2) I BUF (3) C C C C C C C C C =N J =L :II IBUF(4) = FILE TYPE =1 WHEN BLOCK HAS ONLY BEEN USED FOR TRANSFERRING A RECORD FROM IBUF TO AN ARRAY(FOR GET OPERATIONS) =2 WHEN BLOCK HAS BEEN USED TO TRANSFER A RECORD FROM AN ARRAY TO IBUF(FOR PUT OPERATIONS) SET = 1 INITIALLY IBUF(4) = 1 IBUF(S) C = NUMBER OF FIRST RECORD IN BLOCK SET = 0 INITIALLY C C IBUF(S) = 0 RETURN END FEATURES SUPPORTED ONE WORD INTEGERS CORE REQUIREMENTS FOR DOPEN COMMON 0 VARIABLES 6 PROGRAM 50 END OF COMPILATION 17'1 ---------------- THE ~ -31- o II FOR *ONE WORD INTEGERS *LIsT SOURCE PROGRAM SUBROUTINE DGET(IBUF,K,lA) C THIS SUBROUTINE TRANSfERS RECORD K OF A FILE TO ARRAY lA. C IF THE REQUIRED RECORD IS ALREADY RESIDENT IN THE BUFFER, IT IS C IMMEDIATELY TRANSFERRED C IF IT IS NOT IN THE BUFFER, THE BLOCK OF RECORDS IN THE BUFFER C IS STORED IF NECESSARY, AND THE CORRECT BLOCK OF RECORDS C OBTAINED FROM THE DISK, AFTER WHICH TRANSFER OF THE RECORD TAKES PLACE C C C C C DIMENSION IBUF(325),IA(lOO) IBUF = NAME OF FILE BUFFER K = RECORD TO CONTAIN ARRAY IA IA = REQUIRED ARRAY CALL DUSE(IBUF,K,l,l,KL) C HERE TO TRANSFER RECORD FROM IBUF J= IBUF(2) DO 5 JJ = 1,J IA(JJ) = IBUF(KL) 5 KL = KL + 1 RETURN END FEATURES SUPPORTED ONE WORD INTEGERS CORE REQUIREMENTS FOR DGET COMMON 0 VARIABLES C~ (); 6 PROGRAM 62 END OF COMPI LAT ION 17S .______________________________ THE -32II FOR *ONE WORD INTEGERS *LIST SOURCE PROGRAM SUBRoUtINE DPUT(IBUF,K,IA) C THIS SUBROUTINE TRANSFERS AN ARRAY IA TO RECORD K OF A FILE. C IF THE REQUIRED alOCK IS ALREADY RESIDENT IN THE BUFFER, THE ARRAY C IS IMMEDIATELY TRANSFERRED C IF IT IS NOT IN THE BUFFER, THE BLOCK IK THE BUFFER IS STORED C IF NECESSARY, AND THE REQUIRED BLOCK OBTAINED FROM THE DISK, C AFTER WHICH TRANSFER OF THE ARRAY TAKES PLACE. C THE CONTENTS OF IA ARE NOT WRITTEN ON THE DISK. C C C C C o DIMENSION IBUF(325),IA(lOO) IBUF = NAME OF FILE BUFFER K = RECORD TO CONTAIN ARRAY IA IA = REQUIRED ARRAY CALL DUSE(IBUF,K,1,2.Kl) C HERE TO TRANSFER RECORD FROM IA J= IBUF(2) DO 5 JJ = l,J IBUF(KL) = IAeJJ) 5 KL = KL + 1 RETURN END FEATURES SUPPORTED ONE WORD INTEGERS CORE REQUIREMENTS FOR DPUT COMMON 0 VARIABLES 6 PROGRAM o 62 END OF COMPILATION 176 I 01" i'Wt",--,- -33II FOR *ONE WORD INTEGERS *LIST SOURCE PROGRAM SUBROUTINE DCLOS(IBUF) <: C THIS SUBROUTINE CLOSES THE FILE C IF A BLOCK OF RECORDS REQUIRES TRANSFER TO THE DISK. THE TRANSFER C I S MADE. DIMENSION IBUF(32S) c C C c c c IBUF = NAME OF FILE BUFFER KK = IBUF(4) GO TO (3,4),KK 3 RETURN 4 N = IBUF(l) Ll = (IBUF(Z)*IBUF(3») + S LL = NUMBER OF LAST WORD IN BLOCK = IBUF(S) = MINO(320,(LL-S» L = FILE RECORD LENGTH NREC = ( l l + L - 6)/L NREC = NO OF FILE RECORDS Kl c c c C C c;' c c C C C L IN A BLOCK K3 =«KI/IBUF(3»*NREC) + 1 K3 = RECORD WRITECN'K3) RETURN END NUMBER OF THE FIRST FILE RECORD IN THE BLOCK CONTAINING RECORD K (IBUF( 1),1 =6,LL) FEATURES SUPPORTED ONE WORD INTEGERS CORE REQUIREMENTS FOR DCLOS COMMON· 0 VARIABLES 16 PROGRAM 116 END OF COMPILATION o 177 ______________________ ~ ________________________________________________ THE J&&£&d&EJ4#M4M.SJMhM""'U t. . ,., "¥%R4#4¢¥ 42 A¥ -------------------------------------------------- --------~~.~ / / FOR *ONE WORD INTEGERS *LIST SOURCE PROGRAM SUBROUTINE DUSE(IBUF,K,M,KEY,KL) DI~ENSION ISUF(325) C THIS SUBROUTINE GENERATES A POINTER TO ONE WORD OF A DISK C RECORD, SO THAT WORD CAN BE REFERENCED IN A SUBSEQUENT C OPERATION C IF THE BLOCK CONTAINING THE REQUIRED RECORD IS ALREADY IN C THE BUFFER, THE POINTER IS GENERATED IMMEDIATELY ( IF IT IS NOT IN THE BUFFER, THE BLOCK IN THE BUFFER IS ( STORED IF NECESSARY, AND THE REQUIRED BLOCK OBTAINED C FROM THE DISK, AFTER WHICH GENERATION OF THE POINTER TAKES C PLACE C IBUF =NA~E OF FILE BUFFER C K =RECORD REQUIRED C M =WORD REQUIRED C KEY =SwITCH TO INDICATE IF SUBSEQUENT USE OF POINTER WILL C CAUSE RECORD TO BE CHANGED. IF SO, KEY=2. IF NOT, KEY=l C KL =POINTER TO WORD REQUIRED C FIRST 5 WORDS OF IBUF ARE CONTROL WORDS C IBUF(1l= FILE NU~RER (N) C IBUF(2l= LOGICAL RECORD LENGTH (J) C IBUF(3)= NO. OF LOGICAL RECORDS IN A BLOCK (L) C IBUF(4)= FILE TYPE DEFINITION =1 INITIALLY =2 WHEN BUFFER HAS BEEN MODIFIED C C BY PUT OPERATIONS, AND HENCE IS DIFFERENl FROM DISK C IBUF(5)= NO. OF FIRST RECORD IN BLOCK =0 IF BUFFER HAS NOT C BEEN FILLED L=I8UF(3) Kl= (( K-l) Ii..) *L+1 c K1 =RECORD NO. OF FIRST LOGICAL ~ECORD IN THE BLOCK CONTAINC ING RECORD K J=IBUF(2) K2=I8UF(5) IF(KI-K2) 1,2,1 1 N=IBUF(l) L2=J*L c L2 =NO. OF WORDS IN BLOCK Ll=MINO(:20,L2) C Ll =PHYSICAL RECORD LENGTH NREC=(l2+Ll-l)/Ll C NREC=NO OF LOGICAL RECORDS IN PHYSICAL RECORD C -SAME AS BLOCKING FACTOR IF PHYSICAL RECORD LENGTH.LE.320 LL=L2+5 c KK=IBUF(4) C C C C C INSERT THE FOLLOWING STATEMENTS IF A TRACE ON SW 15 IS REQUIRED THESE CAUSE THE VALUES OF ALL PARA~ETERS TO BE PRINTED WHENEVER A PHYSICAL RECORD IS TRANSFERRED TO OR FROM DISK CALL DATSW(15,JJJ) IF(~JJ-l) 99S,997J998 C 9 9 7 ~'J RI TE ( 3 , 9 9 9 ) ( I BUF ( I r I ) , I I I =1 ,5 ) ,K , M, KEY C 999 FOR·".'IAT( t t ,lOIS} C 998 CONTINUE GO TO(3,4),KK C C C C HERE TO STORE BLOCK ON DISK 4 K3= (K2/L)*NREC+l K3 =RECORD NO. OF THE FIRST LOGICAL RECORD IN THE BLOCK 17i ---------------------------------------------------------------------------- o I. -35PAGE 0 0 c CONTAINING RECORD K WR I T E ( N I K3 ) ( I BU F ( I ) , I =6", L L ) c C HERE TO READ NEW DISK BLOCK (K1/L)*NREC+l READ (N' K3) (I 8UF ( I ) ,1=6 ,LL) IBUF(S)=Kl REQUIRED DISK BLOCK IS IN FUFFER 2 KL =(K-1(1)*J+M+5 IF(KEY-l) 6,6,'; HERE FOR PUT OPERATIONS 5 IBUF(4)=2 6 RETURN END 3 K3= C C FEATURES SUPPORTED ONE WORD INTEGERS CORE REQUIREMENTS FOR DUSE COMMON 0 VARIABLES END OF o 16 PROGRAM 216 CO~PILATION 179 &&1;_ AiiIMAiiUkAUk.UU: hM",ijJUAiUm.u::; ale ,I er " ,; 4#,M4##.w " -36II FOR *ONE WORD INTEGERS *LIST SOURCE PROGRAM FUNCTION MINO(I,J) c c c c () FUNCTION SUBPROGRAM TO CHOOSE THE SMALLEST VALUE OF TWO INTEGERS. 210 211 212 290 IF( 1)210,211,211 IF(J)212,290,290 IF(J)299.212,212 IF(I-J)290,29Q,299 MINO = I RETURN 299 MINO =J RETURN END FEATURES SUPPORTED ONE WORD INTEGERS CORE REQUIREMENTS FOR MINO COMMON 0 VARIABLES 2 PROGRAM 48 END OF COMPILATION ~O I~O __________________________________________________ ~ ________ THE o I -31- o II JOB SWAIN SORT-MERGE LISTING II COMET AND IDEAL SUBROUTINES USED BY SORT-MERGE PROGRAM II ASM * *LIST SOURCE PROGRAM 0000 0000 0001 0002 0003 0005 0006 0007 0008 0009 0008 OOOC OOOD OOOF 0010 0011 0012 0014 0015 0016 0017 0019 001A c 001C 0010 OOlF 0021 0022 0024 0026 0027 0029 180D6517 0001 QCOMP BSS 0 0 01 0 0 0 0 00 0 0 00 0 0 6A2B 2829 66800000 0 1001 96800003 00 0 0 0 00 0 30 0 00 30 0 01 01 0 01 THIS IS QCOMP * * STX STS LOX LD STO LD SLA S C205 D024 C200 1001 96800001 BOOC C202 8003 72FF 74FF0032 a 70EF 002A 01 D400002C 002C 01 6600002E 002E 0 2000 002F 01 4C000031 0031 1 0032 0032 1 0033 0033 1 0034 0018 0034 QeOMP 1 2 SAVE&l SAVES 12 QCOMP X2 5 STOR1&1 X2 0 X 1 12 1 TWO SCRAD A 0024 C6800004 0022 7206 6A19 D4000002 C017 181D9042 D016 C4000002 181D9042 9011 4C20002A 74FF0031 ENT INST LOOP STO LD STO LD SLA CHCNT X2 2 X 1 S 12 3 A MDx STX STO LD CALL STO LD CALL S asc MDX TWO X2 6 2 RETRN&l L 2 SCRAD QGRAB ATEMP L 10002 QGRAB ATEt-1P L sTOR1,Z L SCRAD,-l ~~DX MDX MDX STOR1 STO SAVE LDX SAVES LDS RETRN SSC SCRAD DC eHCNT De ATEMP DC TWO EQU END 12 4 X2-1 L L L2 X L eHCNT.-l LOOP * * 0 * * * *INST&l COMPOOIO COMP0020 COMP0030 COMP0040 SAVE XR2 COtv1P0050 SAVE STATUS COMP0060 LOAD XR2 WITH CALL&1 COMP0070 LOAD Ace WITH RET PARA ADD COMP0080 STORE IN STORE PARA INST COMP0090 LOAD se AREA ADD TO ACC SHIFT LEFT ONE BIT SUB COLUMN NO. SC. CHAR ADO TWO STORE INTO SCRAD LOAD CHARACTER COUNT STORE INTO CHCNT LOAD SECOND AREA ADDRESS SHIFT LEFT ONE BIT SUB COL NO FROM ACC ADD TItJO ADD 5 TO XR2 STORE XR2 IN RET INSTR. STORE Ace INTO XR2 LOAD SCRAD TO ACC GET FIELD ONE CHARACTER STORE CH INTO ATEMP LOAD XR2 TO Ace GET FIELD TWO CHAR SUBTRACT ATEMP FROM ACC BRANCH IF NOT ZERO DECREMENT SCRAD DECREMENT XR2 DECREMENT CHCNT NOT ZERO, GO TO LOOP STORE IN RETURN VARIABLE RESTORE XR2 RESTORE STATUS RETURN CO~.-1P0100 COMP0110 COMP0120 CO~.-1PO 130 COMP0140 COMP0150 COMP0160 COMP0170 COMPOl80 CO~1P0190 COMP0200 CO~'P02~O COMP0220 COMP0230 COMP0240 COMP0250 COMP0260 COMP0270 COMPO.280 COt-1P0290 COMP0300 COMP0310 COMP0320 COMP033Q COMP0340 COMPQ350 COMP0360 COMP0370 CO~1P038 0 COMP0390 COMP0400 COMP04l0 COMP0420 COMP0430 NO ERRORS IN ABOVE ASSEMBLY. o 181 __________________________________________ THE ...."""'.""".= .....=..... =............._.= ...""".. . """"' ,. . ,,,"""' . . . ."""".. .-=.....=.......""" ......= .......= ......""'" .....=...... ~-~~-~----------"",,,,,,,,",,,,,,,,,,,,~-.,,,,,,, .... ==~,;;.;;.,"';; ..;;.;;.;.··==~~~_ w.ii,;;;;.,~;" ·3a. II ASM *LIST SOURCE PROGRAM * 0000 18109042 0000 0001 0001 0 1881 0002 0 0002 0003 0 1091 0004 01 (4000006 0006 0 4802 0007 0 1808 0008 0 E002 0009 01 4C800000 OOOB 0 OOFF oooe * THIS IS QGRAB ENT QGRAB ass SRT STO SLT LOAD L.D Bse SRA AND MASK Bse DC QGRAB 1 X 1 LOAD&l X 17 L * e X I END 8 MASK QGRAB 100FF GRABOO10 G'RABOO20 GRABOO30 GRAB0040 DIVIDE BY 2 GRABOOSO STORE WORD ADD INTO LOAD GRAB0060 PUT REMAINDER INTO CARRY GRAB0070 LOAD WORK TO ACC GRABOO80 GO TO MASK INST IF CARRY 0 GRABOO90 RIGHT JUSTIFY CHARACTER GRAB0100 MASK EXTRA BITS GRABOllO RETURN GRAB0120 GRAB0130 GRAB0140 0 NO ERRORS IN ABOVE ASSEMBLY. _ _ _ _ _ _ _ • _ _ • _ _ _ ww _ _ _ •• _ . _ _ • _ _ .,~_ _ _ • _ _ _•_ _ _ _ _ _ _ _• _ _ _•_ _ _ _ _ _. _ THE I ~ 1,1 IJ -39- 0 II ASM *LIST 0000 0000 0001 0002 0004 0006 0008 OOOA OOOB OOOC OOOD OOOE OOOF 0010 0011 0012 0014. 0015 0016 0018 OOlA 0 01 00 01 01 0 0 0 0 0 0 0 0 00 0 0 00 00 0 0018 0 OOlC 0 OOlE 0 o 04262105 0001 69.15 65800000 CD800000 4C280011 4C08000C COlO 7006 1090 4820 70FB COOC 7001 COOS D5·800001 7102 690! 65000000 4COOOOOO FFFF 0001 0000 IDEAL961 IDEAL962 oISGN ENT IDEAL963 *CALL DISGN(OBL INT,ISIGN) IDEAL964 *WHERE ISIGN IS RETURNED -1.0,=1 DEPENDING UPON THE IDEAL965 *DBL INT BEING RESPECTIVLY NEGATIVE,ZERO,POSITIVE IDEAL966 DISGN ass RETURN CALL &- 1 HERE IDEAL961 1 1 INDX1&1 STX IDEAL968 LDX I 1 DISGN IDEAL969 GET DOUBLE INTEGER IDEAL97Q LDD I 1 0 BRANCH IF NEG ACCUM IDEAL971 BSC L NEG.Z6BSC L ZACC,(, BRANCH IF ZERO ACCUM IDEAL972 LD POS PONE LOAD ISIGN WITH PLUS ONE IDEAL973 STORE IDEAL974 MDX IDEAL975 ZACC SLT 16 SHIFT EXT TO Ace SKIP IF ZERO IDEAL976 ase z IDEAL977 MDX POS ZERO IDEAL978 LD IDEAL979 MDX STORE NEG IDEAL980 Lo NONE IDEAL981 STORE STO 11 1 IDEAL982 1 2 MDX LOAD BRANCH BACK INSTRUCT IDEAL983 STX 1 BACK&l INDXl LDX Ll *-* IDEAL984 RESTORE INDEX ONE BACK esc L *-* BRANCH BACK TO MAIN PROG IDEAL985 -1 IDEAL986 NONE DC IDEAL987 PONE DC +1 IDEAL988 ZERO DC 0 IDEAl989 END NO ERRORS IN ABOVE ASSEMBLY. 1~3 THE S -40/1 FOR IDEAl993 *ONE-WORD INTEGERS IDEAl994 *LIST ALL IDEAl995 FUNCTION INT(DBLIN) IDEAL996 C INT IS A FUNCTION WH1CH TESTS THE SIGN OF A DBl INT WITH AN IF STATE IDEAL997 C -1 IF MINUS,Q IF 0,=1 IF POSITIVE IS RETURNED. IDEAL998 C FUNCTION·INT CALLS DISGN IDEAL999 C SAMPLE IF(INT(DIONE))NEG STATEMENT,ZERO STATEMENT,POS STATEMENT NUMBIDEAlOO& CALL DISGN(DBLIN,ISIGN) IDEALOOA INT=ISIGN IDEALOOB RETURN IDEALOOC END IDEALOOD o VARIABLE ALLOCATIONS INT =0000 ISIGN=0002 CALLED SUBPROGRAMS DISGN SUBIN CORE REQUIREMENTS FOR INT COMMON 0 VARIABLES 4 PROGRAM 18 END OF COMPILATION o THE mnSM1!'Purmn . -41- '0 II ASM *LIST 0000 22100000 ,-, 0000 0001 0002 0003 0004 0006 0008 OOOA OOOS OOOC aOOE OOOF 0010 0012 0013 0015 0017 0018 Cl 0 0 0 01 00 00 0 0 00 0 0 00 0 00 00 0 0 0019 0 OOlA 0 001B 0 OOlC 0 0010 0 OOlE 0 OOlF 0 0020 0 0022 0001 690F 280F 2000 65800000 CD800001 9D800002 4801 7009 DD800000 7103 6904 65000000 2000 4COOOOOO 74000032 70FD (006 3000 (OE5 9004 3000 lOAO 70ED DEAF 01C4 SD ENl SUBROUTINE NAME *CALL SO (A.B.C) WHERE A=B-C *DOUBLE INTEGERS HAVE STD PREC REAL VARIABLE NAMES *IOEAL 1130 FORTRAN ERROR CODE IS IDEAF IN ACCUM. *TO DISPLAY STATEMENT ALLOCATION AODR IN ERROR, HIT *START,ACCUM HAS FORTRAN STATEMENT ALLOCATION ADOR. *HIT START TO CONTINUE.OUTPUT IS SET TO ZERO. SD BSS SUBROUTINE ENTRY POINT 1 1 INDXl&1 STX STS STATS LDS INITIALIZE OVERFLOW 0 LOX 11 SO CALL&l ADDR IN INDEX ONE LDD 11 1 LOAD B OF A S-C 11 2 SUBTRACT C OF A B-C SD BSC 0 SKIP IF OVERFLOW IS OFF TOBIG MDX GO TO IDEAL ERROR DISPLAY OUT STD 11 0 MOVE TO A OF A=B-C MDX 1 3 STX 1 8ACK&1 INDXl LDX Ll *-* STATS LDS 0 BACK BSC L *-* TOBIG MDX L 50,0 MDX TOBIG INTERRUPT SERVICE LOOP LD HDEAF IDEAL FORTRAN ERROR CODE WAIT DISPLAY ERROR CODE IN ACC LOAD ENTRY ADDR,5UB ORG+2, LD SO HOIC4 AND DISPLAY STATEMENT S WAIT ALLOCATION ADDR IN ACCUM. SLT 32 CLEAR TO OUTPUT ZERO VALUE MDX OUT HDEAF DC /DEAF IDEAL FORTRAN ERROR CODE HOIC4 DC IOlC4 DISKZ ORGIN +2 END IDEAL769 IDEAL770 IDEAL771 IDEAL772 IDEAL773 IDEAL774 IDEAL77S IDEAL776 IDEAL777 IDEAL778 IDEAL779 IDEAL780 IDEAL781 IDEAL782 IDEAL783 IDEAL7d4 IDEAL785 IDEAL786 IDEAL787 IDEAL788 IDEAL789 IDEAL790 IDEAL791 IDEAL792 IDEAL793 IDEAL794 IDEAL795 IDEAL796 IDEAL797 IDEAL798 IDEAL799 IDEAL800 IDEAL801 IDEAL802 !DEAL803 IDEAL804 NO ERRORS IN ABOV E ASSEMB LY. o THE _;&M4i'M.Na,Miu,&4J. ¥MiSMI,JA NfT%\f\%1##i&MQf¥4A#. " p -42FOR *ONE WORD INTEGERS *LIST SOURCE PROGRAM FUNC1ION LARGECIREC) c THIS IS A SAMPLE SUBPROGRAM TO SATISFY THE CALL TO DUMMY FUNCTION c IUSE IN SUBROUTINE MRGPH c THE PURPOSE OF THIS FUNCTION SUBPROGRAM IS TO DETERMINE IF A c RECORD IS TO BE CONTAINED IN A SORT. ACCORDING TO RULES ESTABLISHED C BY THE USER. IN THIS EXAMPLE, A RECORD WILL BE OMITTED IF WORD 10 c IS GREATER THAN 5 II c c IREe IS ARRAY CONTAINING RECORD C FUNCTION RETURNS 1 IF RECORD IS TO BE INCLUDED. 2 IF OMITTED OIMENSION IREC(32) IF(IREC(lO)-5 ) 1.1,2 1 LARGE=l RETURN 2 LARGE=2 RETURN END FEATURES SUPPORTEO ONE WORD INTEGERS CORE REQUIREMENTS FOR LARGE COMMON 0 VARIABLES 2 PROGRAM 32 END OF COMPILATION 0,,, ....-.•.-.-...... --.-~-.-.--.---.-- -.-.--,--- .. - - -,------------.-------.---------.--- ...---- .. --~ Tf-! ! I I, -4~- II * COMET AND IDEAL SUBROUTINES USED BY DEMONSTRATION PROGRAM II ASM () *LIST 0020 14044240 0000 14062240 009E 14109040 0050 14889040 C ENT MADI SUBROUTINE NAME *CALL MAOI (INPUT ARRAY,FLO START.FLD END,DBL INT) *CALL MAOI MOVES AND CONVERTS Al TO DBL WD INTEGE~ *AN 11 ZONE OVER RT MOST DIGIT NEGATIVE CONVERSION *ALL ZONES EXCEpT RT MOST ARE STRIPPED OfF. *DOUBL~ INTEGERS HAVE STD PREC REAL VARIABLE NAMES * ENT MASI SUBROUTINE NAME *CALL MASI (INPUT ARRAY,FLO START,FLD END.INTEGER) *CALL MASI MOVES AND CONVERTS Al TO SIG WD INTEGER *AN 11 ZONE OVER RT MOST DIGIT NEGATIVE CONVERSION *ALL ZONES EXCEPT RT MOST ARE STRIPPED OFF. * MDIA ENT SUBROUTINE NAME *CALl MDIA (OUT ARRAY,START.END,DBL INT,EDIT CNTRl) *CALL MDIA MOVES AND CONVERTS DBl WD INT TO A1 *EO I T CNTRL O,INSERTS 11 ZONE AT FLO END,NO ZERO SU *EDIT CNTRL -N,- AT ENO+l,ZERO SUPP TO N RT DIGITS *USE INT VARI FOR NEG CNTRL TO SAVE 5 WDS PER CALL *EDIT CNTRL +N,-AT END+2,N DECI PL,ZERO SUPP TO DEC *EDIT CNTRL N GREATER THAN FIELD WIDTH,N IS +0 OR-O *DOUBLE INTEGERS HAVE STD PREC REAL VARIABLE NAMES * MS IA ENT SUBROUTINE NAME *CALL MSIA (OUT ARRAY.START,END,INTEGER,EDIT CNTRL) *CALL MSIA MOVES AND CONVERTS SIG WD INT TO A1 *EDI T CNTRL O.INSERTS 11 ZONE AT FLO END,NO ZERO SU *EDIT CNTRL -N,- AT END+l.ZERO SUPP TO N RT DIGITS *USE INT VARI FOR NEG CNTRL TO SAVE 5 WDS PER CALL *EDIT CNTRL +N,-AT END+2,N DECI PL,ZERO SUPP TO DEC *EDIT CNTRL N GREATER THAN FIELD WIDTH,N IS +0 OR-O **IDEAL 1130 FORTRAN ERROR CODE IS IDEAF IN ACCUM. *TO DISPLAY STATEMENT ALLOCATION ADDR IN ERROR, HIT *START,ACCUM HAS FORTRAN STATEMENT ALLOCATION ADDR. *HIT START TO CONTINUE.OUTPUT IS S.ET TO ZERO. 0000 0001 0002 0003 0004 0006 0007 0008 0009 OOOA OOOC 0 0 0 0 0 01 0 0 0 0 01 01 0 0 01 01 0 eOOE oeOF 0010 0012 0014 0015 0 0016 a 0017 01 0019 0 0000' CO FE 0071 406A 74FF010E C054 D04E 1010 2000 04000090 C48000E8 E04B 1808 D4000092 C4000090 1002 807A 1001 4C010117 8078 OOlA 01 4C290117 *MAS I OC LO STO 851 ASI MDX LD STO SLA LDS STO LD AND SRA 5TO LD SLA A SLA sse A BSC *-* MASI ARGMT&l SAVE L BACK&l,-l HD480 OUT 16 0 L WORK I FLOST HOFOO 8 L DIGIT L VORK 2 WORK 1 L TOBIG,o DIGIT l TOSIG,O&Z SUBROUTINE ENTRY POINT CALL&l ADDRESS SET UP FOR ARGMT ADDR LOAD SAVE XRS & GET PARAMETERS ADJ RETURN ADDR FOR 4 PARA STC I SINGLE INT INST. AT OUT INSTRUCTION CLEAR Ace INITIALIZE OVERFLOW LOAD REMAINING INTEGER FIELO CHARA TO Ace Al DIGIT MASK SHIFT T~ BINARY DIGIT SIGL HOLD INTEGER DIGIT LOAD PARTIAL INTEGER WORK TIMES FOUR PLUS ONE IS FIVE DOUBLE EQUALs TEN TIMES TOO BIG IF OVERFLOW ADD D.l G I T If 7 TOB I G IF .OVERFLOW OR NEG lOEA~OOl IOEALOO2 IDEAlOO! IDEALOO4 IDEA L.OOS IOEAlOO6 IOEALOO7 IDEAlOOS ID£ALOO9 IDEAlO~O I DEAL01I IDEAlOl2 IDEAlOl3 IDEALOl4 IDEALOlS [DEAL016 IDE.AL017 IDEALOl8 IDEALOl9 IDEAL020 tDEAL02l tOEA l,.022 IDEAl023 IDEAL024 IDEAL02S IDEAL026 IDEAL027 IDEAL028 IDEAL029 IDEAL030 IDEAL031 IDEAL032 IDEAL033 IDEAL034 IDEAL035 IDEAL036 IDEAL037 IDEAL038 IDEAL039 IDEAL040 IJ)EAL041 IOEAL042 IDEAL043 IDEAL044 IDEAL045 IDEAL046 IDEAL047 IDEAL048 IDEAL049 IDEALOSO IDEALOS1 IDEALOS2 IDEAL053 IDEAL.054 IDEALOSS IDEAL056 IDEALOS7 IDEAL058 IDEAL059 IDEALOI~P _44", PAGE OOlC OOIE 0020 0021 0022 0024 0025 0026 0028 01 74FFOOE8 01 74FFOOE9 70E9 0 0 D06E 01 C48000EA 0 E077 0 F074 01 4(200028 0 1010 0029 0 9066 002A 0 7028 002B 0 C064 002C 0 7029 002D 002E 002F 0030 0031 0033 0034 0035 0036 0037 0 0 0 0 01 0 0 0000 COFE D044 003F 00 /+0 0 0038 003A 003B 003( 003D OC3E *MADI 004 L.. 01 4(290117 00L+6 01 74FFOOE8 0058 OOSC 01 74FFOOE9 70EC D844 0 01 C48000EA 0 E04D F04A 0 01 4(200055 0 lOAO 983C 0 7001 0 0 C83A 01 D48000EC 01 4COO010A oFOO 0 D480 0 D(80 0 005D 0 004F 0050 0052 0053 0054 0055 0056 0058 005.~ COSE C 005F 0 0060 0 0061 0 0000 COFE D014 4000 1090 L OUT \'JO RK ~1DX OUT DC LD STO *-* MADI MDX LD STO SLT LDS STD LD AND SRT STD LDD SLT AD SLT SSC AD BSC ~~DX t~DX :viDX STD lD AND EOR SSC SLT SD MDX LDAD! LDD OUT STO esc HOFoa DC HD480 DC HDC8'J DC * MSIA FLDND HFOOO HDOOO LDASI,Z 16 WORK BSI ADI FLDST,-l FlD\e 2 IDEAL061 IDEAlO62 IDEAL063 IDEALC64 IDEAL065 IDEAL066 IDEAL061 IDEAl068 IDEAL069 IDEAL07Q IDEAL071 IDEAL072 IDEAL073 IDEAL074 IDEAL075 I DEAL076 IDEAL071 IDEAl018 IDEAL079 IDEAL080 IDEAL081 IDEAL082 IDEAL083 IDEAL084 IDEAL085 IDEAL086 IDEAL081 IDEAL088 IDEAlO89 IDEAL090 IDEAL091 IDEAL092 IDEAlO93 IDEAL094 IDEAL095 IDEAL096 IDEAL097 IDEAL098 IDEAl099 IDEAL100 IDEAL10l IDEAL102 IDEAL1Q3 IDEAL104 IDEAL105 I DEAL1C6 IDEALI07 IDEALloa IDEAL109 IDEAL110 IDEAL1ll IDEALl12 IDEALl13 IDEALl14 IDEALll5 IDEALl16 I DEALll 7 I DEALl18 THE 0 it) 'C: ... , I I': j~ 11 f • ; -42PAGE C'; "I ,.",.., 0062 0064 0066 0067 0068 006.9 006A 01 C48000EC 01 44280083 0 D029 0 C028 0 1890 0 A82F 0 0025 006B 0 1098 006C 0 404E 006D 0 70F9 006E 006F 0071 0073 0075 0076 0078 007A 0078 007C 0070 007E 0080 0081 0082 0083 0084 0 01 01 00 0 0000 6DOO0108 2COO010C 65000000 C100 00 95800002 01 D40000F3 0 8010 0 IJ 085 0 0086 0087 0088 0089 008A 008e 0080 008E 0 0 0 0 0 0 0 0 0 0099 0 009A 0 0098 0 009C 0 n09D 0 0 009E 009F OOAO OOAl OOA2 00A4 OOA6 0 * SAVE DC STX STS ARGMT LDX LD S 5TO A STO LD A S STO A S STO STO (103 !..!) D065 STO LD STO MDX STx SLA LDS 0 0002 0000 0000 0000 0000 000.0 0000 0001 OOOA DOOO DFFF FOOO F040· 0000 0 CO FE 0 DOD3 0 40CC 01 CC8000EC 01 442800B3 DOEE 0 I L STO SLT BSI MDX C104 D064 0 7105 01 6000010E 1010 0 0 2000 01 4C80006E 0090 0092 0 0093 0094 0095 0096 0097 0098 D06E C100 0 SOlA 00 95800001 0 0067 0 8016 0 9067 0 D065 0 D066 0 SIA LD SSI STO LD SRT asc * BSS DIGIT DC DC EVEN DC DC 000 DC DC ONE DC TEN DC HDOOO DC HDFFF DC HFOOO DC HF040 DC \~ORK * MDIA DC LD STO BSI LDD BSI STO II L ARG4A NEGt&Z WORK yJORK 16 TEN WORK 24 TEST SIA LOAD INTEGER BRANCH IF NEGATIVE SAVE INTEGER LOAD WORK INTEGER SET UP DIVIDEND IN A&Q GET LOW DIGIT TO EXT SAVE NEW INTEGER QUOTIENT SHIFT DIGIT TO Ace TEST FOR NEG & FIELD WIDTH GET NEXT DIGIT *-* RETURN AD DR HERE SAVE INDEX ONE SAVE STATUS ARGUMENT ONE ADDR TO INDXl ARRAY ADOR TO ACCUM SUBTRACT FIELD END COLUMN SAVE SIGN ADDR ADD ONE FIELD END ADDR ARRAY ADDR TO ACCUM ADD ONE SUBTRACT FIELD START COLMN FIELD STARTING ADDR ADD ONE SUBTRACT FIELD END ADDRESS STORE FIELD WIDTH FIELD WIDTH TO ZERO SUPP ARG~ ADDR To ACCUM SAVE ARGUMENT 4 ADDRESS ARGUMENT 5 ADDR TO ACCUM SAVE ARGUMENT 5 ADDRESS ADJUST RETURN ADDRESS LOAD BRANCH BACK INST CLEAR ACC SET OVERFLOW & CARRY OFF RETURN TO SUBROUTINE INDX1&1 STATS L1 *-* 1 0 11 2 L SIGN&1 ONE FLDND 1 0 ONE 11 1 FLDST ONE FLDND FLDwD ZSCNT 1- ~ ARG4A 1 4 ARG5A 1 5 L1 BACK&l 16 0 I SAVE E 2 0 E 0 0 0 0 0 1 10 IDOOO /DFFF /FOOO IF040 *-* I MOIA ARGMT&l SAVE ARG4A l NEG ,&Z EVEN&1 CONVERSION WORK AREA DOUBLE WORD DIGIT AREA SECOND WORD OF DIGIT AREA EVEN WORD ONE EVEN WORD TWO ODD WORD ONE ODD WORD TWO ONE 11 ZONE MASK NEGATIVE ZONE MASK. ZONE ISOLATION MASK DIGIT MASK FOR Al FORMAT SUBROUTINE ENTRY POINT CALl&1 ADDRESS SET UP FOR ARGMT ADDR LOAD SAVE XRS & GET PARAMETERS LOAD DOUBLE WORD INTEGER BRANCH IF NEGATIVE SToRE EVEN WORD OF DBl INT /", 3 IDEALl19 IDEAL120 IDEAL121 IDEAL122" IDEAL123 IDEAL124 IOEAL125 IOEAL126 IDEAL127 IDEAL128 IDEAL129 IDEAL130 IDEAL131 IDEAL132 IDEAL133 IDEAL134 IDEAL135 IDEAL136 IDEAL137 IDEAL138 IDEALf39 IDEAL140 IDEA Ll:41 I DEA-Li42 IDEALi43 IDEAL144 IDEAL145 IDEAL146 IDEAL147 IDEAL148 IDEALi49 IDEAL150 IDEAL151 IDEAL152 IDEAL1S3 IDEAL154 IDEAL15S IDEAL156 IDEAL157 IDEAL158 IDEALlS9 IDEAL160 I.DEAL161 IDEAL162 IDEAL163 IDEAL164 IDEAL165 IDEAL166 IDEAl167 IDEAL168 IDEAL169 IDEAL110 IDEAL171 IDEALl72 IOEAL113 IDEAL174 IDEAL115 IDEAL17& IDEALliA? ,g(h,-"~ -46PAGE aOA7 aOAS oo·A9 OOAA OOAS aOAC OOAD OOAE OQAF OOBO OOBl 0082 0 0 0 0 0 0 0 0 0 0 0 0 1090 OOEE C8EA A8EE 00E9 1090 88ES A.8EA 00E1 1098 4009 70F6 0083 0084 00B5 00B6 00B7 00B8 0089 0 OOBB OOBC OOBD 008F 00(0 00(2 00C4 0 0000 0 E8EO 01 D48000EA 0 (02E 01 4(0800(0 01 C48000ED 01 4C20010F 0000 0808 0 COE2 0 D037 0 10AO 0 9807 01 4(8000S3 0 00(6 01 C48000EA 00C8 0 EOD2 00(9 01 Dl+8000EA 00C8 0 1010 ooee 0 D021 OOCD 01 740100EA OO(F 01 7 t+FFOOE9 OODl 0 .'( 00 1 00D2 0 7002 01 4(800088 00D3 OODS 01 (L~8000ED 0007 01 !+C18010A 00D9 01 4C1OOOEO OODS 0 OC)DC OODE OODF OOEO oaEl 800F 01 4C2800FC 0 Dooe 701C 0 DOOS 0 0 (009 OOE2 0 9006 OOE3 01 !J.C1OOOEF OOE5 0 OOE6 0 OOE7 0 OOES 0 OOE9 0 (082 D002 700A OOEA 0 0000 0000 0000 aOES 0000 a . - - -...... ...-....-".-..---.- ......-.-....... , SLT STO LDD 16 000&1 EVEN TEN EVEN&l 16 ODD TEN 000&1 24 TEST OIA SHIFT ODD WORD TO Ace STORE ODD WORD OF INTEGER EXTRACT NEXT DIGIT GET LOW DIGIT TO EXT SAVE NEW EVEN WORD SHIFT DIGIT TO Ace ADD ODD WORD GET LOW DIGIT TO ExT S~VE NEW ODD WORD SHIFT DIGIT TO Ace TEST FOR NEG & FIELD WIDTH GET NEXT DIGIT 4 IDEAL178 IDEAL119 DIA IDEAL180 0 IDEAL181 STO IDEAL182 SLT IDEAL183 AD IDEAL1S4 D IDEAL185 STO IDEAL186 SLT IDEAL187 SSI IDEAL188 MDX IDEAL1S9 IOEAL190 * NEG DC ENTRY FOR NEG ROUTINE IDEAL191 *-* STD WO.RK STORE DOUBLE INTEGER IDEAL192 ONE LD SET NEGATIVE SWITCH ON IDEAL193 STO NEGSW SET NEGATIVE SWITCH ON IDEAL194 SLT 32 CLEAR Ace & EXT IDEAL195 WORK SO COMPLIMENT VALUE IN WORK IDEAL196 NEG 8se GO TO CONVERSION ROUTINE IDEAL191 IDEAL198 * TEST DC TEST RETURN IDEAL199 *-* OR HF040 MASK DIGIT FOR Al FORMAT IDEAL200 STO FLDNO OUTPUT RECOVERED DIGIT IDEAL201 LD NEGSW LOAD SWITCH CONDITION IDEAL202 SSC L POS,& BRANCH TO pas IF sW OFF IDEAL203 LD I ARG5A EDIT CONTROL PARAMETER IDEAl204 sse L MINUS,Z BRANCH IF NOT 11 ZONE (ODE IDEAL205 * INSERT 11 ZONE OVER FIELD END DIG1T IDEAL206 LD I FLDND GET END DIGIT OF FIELD IDEAL207 AND HDFFF INSERT 11 lONE WITH DIGIT IDEAL208 STO FlDND PUT DIGIT WITH 11 ZONE IDEAL209 Sw 16 SLA CLEAR Ace IDEAL210 NEGSyJ STO SET NEG SWITCH TO ZERO IDEAL211 POS MDX L FLDND,&1 THIS IS NOW NExT COLUMN IDEAL212 rv1DX L FLD\tJD ,-1 THESE COLUMNS ARE YET TO G IDEAL213 tv1DX AGAIN SKIP THIS IF FLDWD IS ZERO IDEAL214 t~DX EDIT IDEAL215 ,~.GAIN SSC TEST GET NEXT DIGIT IDEAL216 IDEAL217 *EDIT LD I ARG5A EDIT CONTROL PARAMETER IDEAL218 sse L INDX1,&OMIT SUPP ZEROS IF ZERO IDEAL219 Bse L DEC,NO DECI POINT IDEAL220 A lseNT CAL-C LEFT ZERO MAX COUNT IDEAL221 sse L SLZ,&Z N GT FlDwD,CNTRL IS -0 IDEAL222 STO ZSCNT MAX LEFT ZERO SUPPRESS IDEAL223 MDX SLZ BRANCH TO SUPPRESS ZEROS IDEA L224 DEe FLDWD STO STORE WIDTH OF DECI FIELD IDEAL225 LD ZSCNT ENTIRE FIELD WIDTH IDEAL226 r LDVJD SUBTRACT DECI WIDTH IDEAL227 S SSC L NOR,~, N GT FLDWD,CNTRL IS &0 IDEAL22B LD ONE LOAD ONE IDEAL229 STO FLDviD SET FLDWD TO ONE FOR SIGN IIDEAL230 MDX SIGN BRANCH TO SIGN IDEAL231 FLDST DC 0 FIELD START ADOR IDEAL232 FLDWD DC FIELD WIDTH 0 IDEAL233 FLDND DC 0 FIELD END AD DR IDEAL234 lSCNT DC 0 ZERO SUPPRESS MAX COUNT !DEAL235 /90 THE 5 _._--. ..... - ----~.--,--------- --.-~---- -~.--,- ... ·r, V ~ . . rl C) I...• -47PAGE o OOEC 0 OOED 0 OO::E 0 0000 0000 0000 OOEF OOFO OOF2 OOF4 oaFS 00F6 00F7 00F9 OOFA DOFB 740100E9 65000000 C100 DIFF 7101 74FFOOE9 70FA COlA 0 01 00 0 0 0 01 0 0 OOFS 0 DIFF oaFC OOFE 0100 0102 0104 0105 0107 0109 OlOA 010C 010D 01 01 01 01 0 01 01 0 00 0 00 74FFOOEA C48000EA E400005A 4C20010A COOF D/+8000EA 74FFOOEB 70F2 65000000 2000 4COOOOOO uj,ur u I...UUO 0110 01 D48000F3 0112 01 4COOOO(8 0114 0 4040 0115 0 4B40 0116 0 6040 0117 0119 OllA 011B OllC OllE OllF 0120 0121 0123 0124 0126 00 0 0 0 01 0 0 0 01 0 0 74000032 70FD (009 3000 C4000074 9004 3000 lOAO 4(000056 01C4 DEAF ARG4A DC ARG5A DC N EGSW DC o o o 5 ARGUMENT 4 ADDRESS ARGUMENT 5 VALUE IDEAL236 I)EAL237 IDEAL238 IDEAL239 ** SHIFT RIGHT TO FIELD END PLUS TWO FOR DEcr POINT IDEAL240 NORM STo ZSCNT MAX LEFT ZERO COUNT IDEAL241 MDX L FLDWD,1 ADJUST FOR SIGN POSITION IDEAL242 LOAD SIGN ADDRESS SIGN LDx Ll *-* IDEAL243 NEXT LD 1 0 LOAD CHARACTER IDEAL244 STO 1-1 SHIFT RIGHT ONE COLUMN IDEAL245 MDX 1 &1 INCREMENT INDEX FOR NEXT IDEAL246 MDX L FLDWD,-1 DECREMENT DECI WIDTH CNTR IDEAL241 I"1DX NEXT SKIP IF LAST DEcr POSITION IDEAL248 lD H4B40 LOAD DECIMAL POlNT IDEAL249 STO 1-1 INSERT DECIMEL POINT IDEAL250 * SUPPRESS LEADING ZEROS IN OUTPUT FIELD PER COuNT IDEAL251 SLZ MDX L FLDND,-1 THIS IS NEXT COLUMN RIGHT IDEAL252 LD I FLDND LOAD LEFT CHARACTER IDEAL253 AND L HOFOO ISOLATE DIGIT IDEAL254 Bse L INDX1,Z BRANCH QUT IF NOT ZERO IDEAL255 LOAD BLANK TO REPLACE ZERO IDEAL256 LD H4040 STO I FLDND OUTPUT BLANK TO FIELD IDEAL2,7 MDX L lSCNT,-l MAX ZERO suPP SKIP EXIT IDEAL258 MDX SLZ SKIP THIS IF MAX CNT ZERO IDEAL259 RESTORE INDEX REG ONE IDEAL260 INDXl LDX Ll *-* RESTORE STATUS IDEAL261 STATS LDS *-* BRANCH BACK TO FORTRAN PRO IDEAL262 BACK SSC L *-* IDEAL263 * INSERT MINuS SIGN AT FIELD END PLuS ONE Mr,~~u5 L.u MOU,+U MiNuS SiGN i uEAL26it-STO I SIGN&l AT FIELD END PLUS ONE IDEAL265 sse L SW I DEAL266 H4040 DC /4040 BLANK IDEAL261 H4B40 DC /4840 PERIOD IDEAL268 H6040 DC IDEAL269 /60 /+0 DASH IDEAL270 *TOSIG MDX L 50.0 IDEAL271 MDX IDEAL272 TOBIG INTERRUPT SERVICE LOOP IDEAL273 LD HDEAF IDEAL FORTRAN ERROR CODE WAIT DISPLAY ERROR CODE IN ACCU IDEAL274 IDEAL275 LD L ARGMT&l DISPLAY ENTRY ADDRESS IDEAL276 H01C4 AND DISPLAY STATEMENT S WAIT ALLOCATION AD DR IN ACCUM. IDEAL277 SLT 32 CLEAR TO OUTPUT ZERO INTEG IDEAL278 IDEAL279 Bse L OUT HOIC4 DC /01C4 IDEAL280 DISKZ ORGIN +2 HDEAF DC /DEAF IDEAL281 IDEAL FORTRAN ERROR CODE IDEAL282 END NO ERRORS IN ABOVE ASSEMBLY. o ,_ _.__-L-!...I1/~ _ _ _ _ __ ,_ _ _ THE S ____ ~~~~~ = . . ·-"""""· . - ·. "". _ _ _ _ _ _ _ _ _ _ _ __.._.._=.-...,.""'' ' ' '"' '-,---'' ' ' ",.'' '"' ' '...... ,.,.,'' ' ',= ....,,.... '-·m""""··'.."""'· ......·=,-·. =---...-·"""', ...... i..... ··-·'~-·,-~--=-i--·-::;;;;. ..---~--~~_.o....-..~_ _ _~_ .48. II ASM *LIST SOURCE PROGRAM 0000 0000 0001 0002 0004 0005 0006 0008 0009 OOOA OOOC 0000 OOOE OOOF 0011 0012 0013 0014 0016 0 01 0 0 00 0 0 00 0 0 0 00 0 0 0 185C18A2 0001 6A20 66800000 C200 1001 96800001 801E D01B C6800004 0019 C202 1001 96800003 801S 7205 6AIO Df f-OOOOO2 COOE 0017 181D9042 0019 18888925 0018 72FF OOlC 74FF002S OOlE 74FF0026 0020 0 70F'5 0021 01 66000023 0023 01 '+COOO025 0025 1 0026 0026 1 0027 0027 0 0002 0028 00 0 30 30 0 01 01 NO ERRORS * * THIS· IS QPASS ENT QPASS BSS STX LDX LD SLA S A STO LD STO LD SLA S A MDX STx STO LOOP LD CALL CALL MDX MDX MDX MDX SAVE LDX RETRN Bse SCRAD DC CHeNT DC T\vO DC END QPASS 1 2 SAVE&l 12 QPASS X2 0 X 1 12 1 T\'JO SCRAD 12 4 CHCNT X2 '"., X 1 12 :3 TWO X2 5 2 RETRN&l L 10002 SCRAD QGRAB QSHUV X2 -1 L SCRAD,-l L CHCNT,-l LOOP L2 L * * * *2 PASSOO1O PASSOO20 PASS0030 PASS0040 SAVE XR2 PASS0050 LOAD XR2 WITH CALL&l PASS0060 LOAD SOURCE AREA TO Ace PASSOO70 SHIFT LEFT ONE BIT PASS0080 SUB COLUMN NO OF SC FIELD PASS0090 ADD TWO PASS0100 STORE ACC INTO SCRAD PASSOllO LOAD CHARACTER COUNT TO AC PASS0120 STORE IN CHCNT PASS0130 LOAD DEST FIELD ADD TO ACC PASS0140 SHIFT LEFT ONE BIT PASS0150 suB DEST eH NO FROM ACC PASS0160 ADD TWO PASS0170 ADD 5 TO XR2 PASS0180 STORE IN RETURN INSTR PASS0190 STORE ACC IN XR2 PASS0200 LOAD SCRAD TO Ace PASS0210 GET SOURCE CHARACTER PASS0220 PUT IN DESTINATION FIELD PASS0230 PASS0240 DECREMENT XR2 DECREMENT SCRAD PASS02SQ PASS0260 DECREMENT CHeNT NOT ZERO, GO TO LOOP PASS0270 PASS0280 RESTORE XR2 PASS0290 RETURN PASS0300 PASS0310 PASS0320 PASS0330 IN ABOVE ASSEMBLY. ____~___~__~.__,. . . ______.-_____-,_~--~--"-.-191.--_. --------------- -~- 0 C o _____________113_ · -...............""'""-'""""-·--'o...........""""'-............."""'"'-_ _ _ _ ~IJIIIr~.~.t_:·4'.,..,.. ,~.."••. . . - ' .... 'L'.. ','~"" :"50-.- .. _._--------_._-------------- II JOB T II FOR *SEI0 42192 .1 SWAIN CALL ME o *IOCSCTYPEWRITER.l132 PRINTER,DISK) *ONE WORD INTEGERS *LIST SOURCE PROGRAM C DEMONSTRATE PMERG BY SORTING 1000 RECORDS OF 32 WORDS C USE 5 SORT KEYS. OCCUPYING SWORDS C MAJOR KEY IS WORD 6, INTEGER C SECOND KEY IS WORDS 14 AND 13. TREAT AS DOUBLE wORD INTEGER C (SIGN AND HIGH-ORDER BITS IN WORD 14, LOW ORDE~ BITS WORD 13) C THIRD KEY IS wORD 21, TREAT AS 2 ALPHABETIC CHARACTERS C FOURTH KEY STARTS IN WORD 16, REAL C (SIGN AND HIGH-ORDER BITS IN WORD 16 C LOW ORDER BITS AND ExPONENT IN WORD 15) C MINOR KEY IS WORDS 30 THRU 32 TREAT AS 3 ALPHABETIC CHARACTERS, C STARTING FROM RIGHT CHARACTER OF WORD 30 EXTERNAL LARGE C . LARGE IS NAME OF PROGRAM TO DETERMINE IF RECORD IS TO BE C INCLUDED IN SORT DIMENSION IREC(32) DIMENSION KEYS(4,5),rWORK(lS5Q),I8UF(325) DIMENSION AREC(3) DIMENSION NAME(25),IOUT(11) EQUIVALENCE(AREC( 1), IREC( 16}), (DOUB, IREC( 14») DEFINE FILE 1(101.320.U.l1) DEFINE FILE 2(30.320,U,I2) DEFINE FILE 3C30,320,U,I3) DEFINE FILE 4(4.320,U,I4) C FILE 1 IS FILE iO BE SORTED. C FILES 2 AND 3 ARE WORK FILES C FILE 4 IS OUTPUT. CONTAINS POINTERS TO INDICATE PROCESSING ORDER C AS DETERMINED BY SORT KEY INFORMATION C C GENERATE 1010 RECURDS OF RANDO~-.1 C PMERG WILL EXAMINE LAST 1000 OF C INCLuDED IN SORT. AND THEN SORT CALL DOPEN(IBUF.lt32,10) K=31525 L=899 IX=1000 IK=S IB=10 IL=IB+IX-l C CREATE ALPHABETIC CHARACTERS IN C ARE INCLUDED NAME(1)=16459 NAME ( 2·) =19790 NAME(3)=20571 NAME(4)=2364S NAME(S)=24673 NAME(6)=27517 NAME(7)=32449 NAME(S)=-1567"1 NAME(9)=-lS163 NAME (10) =-146 /+9 NAME(11)=-1413S NAME(12)=-11822 NAME(13)=-11308 NAME(14)=-10794 Nl'MBERS THESE TO SELECT THOSE TO BE THOSE INCLUDED NAME. ALL VALID PRINTER CHARACTERS 01,. TH -51PAGE 02 C" " l.'j C C C C C C C C NAME(15)=-10280 NAME(16)=-9758 NAME(17)=-7196 NAME(18)=-6682 NAME(19)=-6168 NAME(20)=-5648 NAME(21)=-3598 NAME(22)=-3084 NAME(23)=-2S70 NAME(24)=-20S6 NAME(25)=-1792 STORE RANDOM INTEGER IN RANGE -9 TO +9 IN WORDS 1-14 DO 1 I=l,IL DO 2 J=1,14 K=K*L 2 IREC(J)=K/3277 STORE RANDOM REAL NUMBER IN RANGE -10 TO +10 IN WORDS 15-20 DO 5 J=1,3 K=K*L 5 AREC(J)=FLOAT(K)/3277. STORE RANDOM ALPHABETIC CHARACTER IN WORDS 21-32 DO 6 J=1,24 K=K*L M=K/1311+25 6 CALL QPASS(NAME,M,IREC(21),J,1) 1 CALL DPUT(IBUF.I,IREC) CALL DCLOS(IBUF) CREATE KEYS TABLE, TO INDICATE LOCATION AND TYPE OF SORT KEYS MAJOR KEY IS INTEGER. WORD 6 KEYS(1.1)=1 KEYS(2,1)=6 SECOND KEY IS HIGH PRECISION INTEGER. HIGH-ORDER pART IN WORD 14 SORT INTO DESCENDING ORDER BY THIS KEY KEYS(1.2)=-2 KEYS(2.2)=14 THIRD KEY IS ALPHABETIC. FIRST CHARACTER WORD 21 COL 1, 2 CHARACTERS KEYS(1,3)=3 KEYS(2.3)=21 KEYS(3,3)=1 KEYS(t+~3)=2 C C FOURTH KEY IS REAL, STARTS IN WORD 16 KEYS(1,4)=4 KEYS(2,4)=16 FIFTH KEY IS ALPHABETIC. FIRST CHtRACTER KEYS(1,S)=3 KEYS(2,S)=30 KEYS(3,5)=2 KEYS(·4,S)=3 WOR~ 30 COL 2. 3 CHARACTERS C o C PERFORM SORT-MERGE WRITE(1,102) 102 FORMAT(tSTART SORT-MERGE') CALL PMERG(1,32,IB,IX ,KEYS,IK,IWORK,1850,IBUF,lO.2,3.4, $LARGE,KOUNT) WRITE(lrl03)KOUNT 103 FORMATC'END sORT-MERGE'.I6.' RECORDS INCLUDEDt) c C LIST FIRST 10 RECORDS IN SORTED FILE ---'-ff.____.____ ~ __._- I~ -52PAGE 03 CALL CALL DO 4 CALL DOPEN(IBUF,1,32,lO) DOPEN(IWORK,4,1,320) 1=1,10 DGET(IWORK'!'IPT) WRITE(:3,lOl)IPT 101 FORMAT(' RECORD NO,',IS) CALL DGET(IBUF,IPT,IREC> CALL QPASS(NAME,1,IOUT,21,1) CALL MDIA(IOUT,l,lO,DOUB,-l) 4 WRITE(3,104)(IREC(J),J=1,12),IOUTtAREC,(IREC(J),J=21,32) 104 FORMAT(· ',1213,11Al,lX,3FS.4,lX,12A2) STOP END FEATURES SUPPORTED ONE WORD INTEGERS IOCS CORE REQUIREMENTS FOR COMMON VARIABLES ° ~ND 2324 PROGRAM 674 OF COMPILATION ,_ _ _ _ THE -53II XEQ L 1 *LOCAL,SRTPH,MRGPH o FILES ALLOCATION 1 0432 2 0497 3 0465 4 04D3 0065 OOlE OOlE 0004 STORAGE ALLOCATION R 47 0010 (HEX) WORDS AVAILABLE CALL TRANSFER VECTOR DISGN QCOMP INT SD QSHUV QGRAB MINO IPTSK DUSE MDIA DGET LARGE PMERG DCLOS DPUT 1C66 1C32 lBBA 1B94 1B7C 1B70 lA78 1940 1855 178C 16B1 168D 1638 15C6 1576 QD,A.S5 !'5~6 DOPEN MRGPH SRTPH 1498 1D25 1CF8 LOCAL LOCAL LIBF TRANSFER VECTOR FSUB SDRED SDCOM SDIX SDWRT FARC NORM EBCTB GETAD IFIX PAUSE SUBIN STOP SIOAF SIOAI SIOIX SIOI SCOMP S\'-JRT o FSTOX FDIV 1BCC OD9E ODC2 OD94 ODEC 1B4E 1B24 1B21 1AEO 1AB4 lAA8 1820 1814 OFEF OFFC 1071 OFF7 OFDF OFD6 145A 14F4 lif7 ._ _ _ TH~ o o o SUBSC luE6 14C8 FSTO FLO 147A FLOA' PRN-T t. WRTYZ 145E 1398 1360 SFIO lOAD SOFIa DISKZ O·OF1 OOF4 SYSTEM ROUTINES lF6F ILS02 ~ 1C90 OB3C (HEX) IS THE EXECUTION ADOR. FLIPR t ~ RECORD NO. 764 4 -8 -2 2 -3 R~CORD NO. ~75 1 -1 -4 -8 4 RECORD NO. 861 -7 -5 9 -6 -8 RECORD NO. 349 -4 3 -2 -1 4 RECORD NO. 773 ... e -7 6 -4 -8 RECORD NO. 860 4 o -5 7 0 RECORD NO. 632 -5 o -3 0 7 RECORD NO. 74 ... 7 o -2 -5 -5 RECORD NO. 533 0-. "" o -5 -1 -4 -6 589830 4.8669 -4.3433 -4.8663 XHLNP2LYVQ.8BAW'MGCPQMI) 0 9 0 589810 3.2807 9 -8 0 3 458760 3.5761 -4.8565 -6.3280 .D14+)K=02,J+&*U-PB*H.X8 -9 0 "9 1 -1 9 9.5688 2.8877 CODHXQ*(C=7'(SFTZ5(B&-. -9 -6 9 -9 -7 4 -7 1 8 7 458753 1.701' -9 -4 4 6 4 '3 2 458753 5.5974 -7.5419 -0.6350 7=,VNZ8K=+K60ZZC$R7ZIA.M -9 -5 -8 o -4 o -7 458750 8.7339 -7.7415 -0.0619 0 5 393219 -7.4418 9.3521 8.0967 K6&ILI1C*,4RM16141TYHZYW -5 -5 393216 4.5422 3.7445 6.5855 N.+FF/MT.BAC-FL2LLE2UX(2 -1.5309 -9 -2 6 4 -1 .. 9 0 6 o 3 o "9 0 o -9 -6 -7 RECORD NO. 965 ..4 -6 1 -9 5 6 0 9 8 1 -8 0 393207 3 3 -Q -6 327684 0 9.5115 -3.zu:;2 LW(N( (/H.=I$( 22R LZFbK* 3.5706 -9.7946 8,8004 -7.9325 v+w ,~57LVOFWD/E*6-62.11 '4V$G)UK56SCC3SZ/UY*+~+K 8.1925 Y'RJDQ1M7TYC"L U2$Z6CS2 o START ENn SOPT-t~F.P.~F. SORT-MFR~F 811 RECCRDS INCLUDED /1'1 II JOB II FOR *5E10 42192 .2 SWAIN *ONE WORO INTEGERS *LIST SOURCE PROGRAM FUNCTION INTAK(IREC) C THIS FUNCTION CAUSES ALL RECORDS TO BE INCLUOEO IN A SORT INTAK-l RETURN END FEATURES SUPPORTED ONE WORD INTEGERS CORE REQUIREMENTS FOR INTAK COMMON 0 VARIABLES END OF COMPILATION 2 PROGRAM 14 o o SESSION NUMRER T.2.5 SPEAKERS PANEL ON PROGRAMMER EVALUATION A.S. GLOSTER, II, OAK RIDGE ASSOC. UNIV. S.A. LYNCH, tl.S. REDUCTION CO. DR. L.H. RAKER, PIONEER HI-BRED CORN en. OR. PAUL HER""ITZ, I.B.M. ~Ol o PROFESSIONAL PROGRAMMERS AND ANALYSTS: PROBLEMS IN PERFORMANCE EVALUATION * By: Arthur S. Gloster II Oak Ridge Associated Universities is a nonprofit corporation engaged in research and educational activities located in Oak Ridge, Tennessee. The primary function of the corporation's data processing center is to apply electronic data processing techniques, where feasible, to research and administrative projects. The center contains of which 13 are analyst/programmers. 27 employees The center is divided into three groups: 1) scientific applications consisting of 6 personnel and a group leader, 2) commercial applications consisting of 5 personnel and a group leader, and 3) operations section consisting of a Gupervisor and 10 other employees. Oak Ridge Associated Universities has on site an IBM 1800 disk/tape system which is utilized by approximately 40% of the programming personnel. Approximately 60% of the personnel use IBM 360-50, 360-75 and CDC equipment located in the area. The analysis and programming function comprise a significant portion of the operating costs of the ORAU data processing center. After discussion with personnel from other installations, we found that there are no reliable standards by which costs can be calculated in advance, schedules established, and the performance of personnel evaluated,. use~ to establishschedul~s Although the methods we and costs are subjective and arbitrary, they in no way approach the accuracy of the methods c -2- o developed in the hardware area. For example, IBM has estab- lished rates for EAM equipment and has even produced a slide rule to use for estimating job times. A means of evaluating the professional analyst/programmer's job and a means of evaluating his effectiveness is highly desirable but rarely accomplished. Such means would be helpful predictors in determining the staff needed for a particular application or a data processing installation. We have found that records of intangibles, such as the time for the application analysis and problem definition, flow charting, coding, debugging, checkout, and finally documentation would have to be maintained continuously to have a base for predicting analyst/programmer costs and for personnel evaluation. In predicting costs of computer programs and evaluation, we would like to be able to have a magic number representing the proper number of analysts or programmers that could be applied to a given situation and for our center as a whole, but we found this to be impractical because we were measuring intangibles by SUbjective means. We found that attempting to save expenses by minimizing or restricting the availability of professional personnel caused equipment to be used ineffectively. The more the programmer is annoyed with accounting for his time and the more detailed the account for nonproductive time, the less apt he will be in cooperating in a program that keeps up with all of the various functions he performs. o ~03 -3- Programming personnel at ORAU are engaged in numerous o types of jobs; therefore, standards of work evaluation could not effectively reflect the variety of tasks they encounter. One programmer may be responsible for coding X number of instructions with relatively small amounts of logic development, while another programmer may be responsible for extensive logic development with relatively few instructions. Thus, it becomes difficult to measure the amount of work required on each program, and the total work effort performed by a programmer cannot be assessed in standards of comparison with another programmer. At ORAU, we believe that the group leader of either the scientific section or the commercial section, depending on the particular area, should look at the problem in advance and then meet with the data processing manager to establish reasonable target dates for each of the previously-mentioned phases on the basis of the nature of the problem and on their past experience. The manager or group leader must have a detailed knowledge of the problem under study because it is his responsibility to prepare the cost estimate-'and schedule. He must keep up with the allocation of funds and judge progress of the application. After giving several methods of job measurement trial, we have found that there is no substitute for experience in the area of predicting costs, measuring work, and evaluating programming personnel. Programmers :C'. ,- -4- o respect a supervisor who gives them a job and can tell them what performance is expected. The supervisor is also respected by his staff if he remembers that good supervision is the least supervision needed to get the job done. ,.'\. '-" o -5- o *From Oak Ridge Associated Universities, Oak Ridge, Tennessee, under contract with the United States Atomic Energy Commission. Programmer Evaluation in U. S. Reduction Co. o 5. A. LpC/A u. S. Reduction Co. is a producer of secondary aluminum alloys. Annual sales are over $60, 000, 000. There are approximately 900 employees. Corporate headquarters and one plant are located in East Chicago, Indiana. There 'are four other plants in four other states. Data-processing-services employees number six. In addition to a manager and assistant manager, there are two programmers, one operator and one key-puncher. In addition to these individuals, two other company employees are closely related; one functions ae ~ senior systems analyst, the second as a special project researcher who does his own prograrnrning. Finally, use has been made of two outside progra:m.rn.ers on a contractor hourly basis. U. S. Reduction Co. uses two IBM 1130 Systems and some time on System 360/Models 20 and 30. An expanded 1130 configuration has been ordered. Methods of evaluation of programmer-effectiveness are based on subjective criteria, augmented by certain measurable phenomena. These include: a. Demonstrated dedication to task and cooperation during its fulfillment. b. Speed of accomplishment of as signed tasks. c. Feedback from users serviced by applications programmed by the programmer in question. d. Feedback from IBM personnel dealing with the prograrnrner on technical matters. e. Extent and clarity of program documentation and general eas e of implementation. f. Infrequency of undefined error halts, accuracy of output, and speed of job execution. g. Personal evaluation by the programmer during the semi-annual salary review interview. h. In all of the above full recourse must be made to comparisons with the evaluator's personal experience as a programmer himself and with other programmers he has known. o 207 o Management Installation Division PROGRAMMER EVALUATION by Dr. Paul S. Herwitz IBM Corporation Old Orchard Road Armonk, New York 10504 (914) 765 - 4543 ' \ 1 0' ". Thursday, 10:30 A.M. Text, 12 pages c· , . li~ Ii o c PROGRAMMER EVALUATION Whenever the subject of Programmer Evaluation comes up in conversation, at meetings, and as the topic for panel discussion, I have the feeling that the participants are looking for easy answers. As an IBMer who has been in this business for a long time, I'll have to disappoint you if you expect me to give you an algorithm for judging the work that programmers do; because I don't believe one ever will exist. It's easy to understand that in a profession that's only 20 years old, in which the technology is in its infancy, in which 40% or 50% of the people working in it probably have been working in it for about two years, in which an operating system which was a new concept in 1962 is old -hat in 1967, in which an experienced professional is ancient if he's been in the business ten years, and in which a manager is highly experienced if he has five years of manag-ement -- it's easy to understand that most of us don't really know what to expect of the practitioners of this peculiar craft called programming-. I'm disturbed by the idea some people seem to have that there may be a magic formula and some sort of mechanical procedure that produces an evaluation automatically without anyone's effort and judgment going into the process. You know, programmers are a clever lot; and if someone comes up with such a scheme, they'll find a way to beat it. The evaluation of the work of professionals is just not an easy task. It's especially difficult in a profession that's as young as ours. To do the job properly requires a lot of experience, a lot of skill, -and especially it requires a lot of energy on the part of the manager. It also requires an understanding of a company's philosophy -- a knowledge of what the company expects to accomplish by evaluating its people, and a knowledge of its standards. I think, also, that there is an opportunity now to improve the case for professionalism in programming. In an activity that's so new, -- which has been entered by so many people so recently - - in which the demand for practitioners far exceeds the supply -- it comes as no surprise that advancement has been a matter of expediency more often than we care to admit. This only works to the detriment of the profession. We expect the number of programmers and analysts to double in the next four or five years, and we expect it to triple in ten. It's time to take stock. The opportunity won't last forever. 2.09 _ , ... ............ "'.~.,_ ~~~~ _ _ _ _ _ _ _ _ _ _ _ _ _ _......,...,................. ' """', .. t_"""_""".='." .. ._= . . . ."_.,= . . ........ . ·=--..... - ""'""····=··,·~"""'·· "C-, .... ", ....., ... ---,.- As I have said, the evaluation of the professional's performance on the job is really very difficult. It's a continuing problem '- - one with , no pat solution, only guidelines. Now one of the guidelines I'm going , to speak about later on is knowing wha't the job is. And this applies to the first line manager as well. This manager must know that evaluation is his job and he, himself, will be measured on how well it's done. This is something that's not well understood by new, young managers, and I think the reason lies partly in today's pressure environment and partly in the way we choose managers. Many of us say that the progr,ammer lives in a state of constant crisis. That may be true, but I don't think it's a characteristic that applies only to the life a programmer' leads. I think if you will look at any production-oriented business -- and I mean by that any activity in which you produce a product -- I think you'll find the same kind of perpetual crisis, or continuing pressure situation throughout the business world and industry today. Requirements are always changing, technology is constantly changing, and invention is made according to schedule. This means management is generally facing new technical problems every day. Combining this with the explosive growth that has taken place in the programming field, it's easy to understand the tendency to choose as a new manager the person in the group who has been technically most competent. Unfortunately, this doesn't mean that our new manager is the person most likely to succeed as a manager of people. Technical competence is, of course, a most necessary attribute of a manager, but I believe that in the long run the person who is really well oriented to the people who work for him will produce much more than the purely technically-oriented manager. The Situation, of course, tends to be self-perpetuating. The new manager probably learns more from his manager than from anyone else. But the second line manager, himself, is so busy with the problems of meeting schedules and changing requirements that he is not likely to take the time to tutor his new subordinate in the personnel aspects of the job. Moreover, the second line manager probably lived in the same environment when he first became a manager and learned very little of this aspect of the job from his seco:p.d line manager. Now this is a pretty vicious cycle, but it can be broken. Breaking it depends upon management in general realizing the value of doing the job properly. Just plain common sense tells us that there can be a real payoff. In order to become a really top notch manager, a person must have considerable insight which usually comes only after very extensive experience -- job insight and insight into people -- what they're -2- 210 o o ,. II capable of and what motivates them. In lieu of this extensive experience, the problem is -- how can we do a job which in some sense can be considered competent? Well, one thing we can do is attempt to give our managers better education in the form of instruction by his manager, and education in terms of formal training. I think most companies probably do a pretty good job of training new managers in various administrative aspects of their job, such as a knowledge of company policies, what procedures to follow, when it's necessary to requisition supplies, how to fill out the forms necessary to give a man a raise, and so on. But although most companies have forms to be used and to be filled out before and after an appraisal and counseling interview is held, since the evaluation process is so judgmental in nature, it's very difficult to tell anyone how to make the decisions necessary so that he can fill in the forms. My firm belief is that you learn this only by trying, by reviewing your decisions with your own manager and by trying again. And, of course, it's always extremely useful for a new first line manager to talk it over with other first line managers who have had more experience than he. At best, the only specific instructions that can be given can only be in the form of guidelines; and we will discuss a number of guidelines later. Let's take a look, now, at the reasons for evaluating our people. In IBM if we ask why we evaluate programmers, the answer is easy to understand. And I think our reasons are pretty much the same as yours. Evaluation really has a triple payoff - - for the company, for the manager, and for the programmers. 0 ~_) If we look at the process from the company's viewpoint there are three important reasons. First, we want to improve our products and our services by finding an optimal deployment of our human resources. Second, we want to be certain that the salaries we pay are equable throughout all of our programming activities. And third, something that isn't often considered, IBM's attitude toward its programmers and toward the profession in general is bound to have a major impact on all programmers. So we feel that learning to do the job properly is a challenge and an opportunity to help the profeSSion. If we look at evaluation from the manager's viewpoint, the reasons are similar but more specific. First of all, the manager has to find the people most capable of doing the job he needs done. This means he must find the best way to utilize the people he has -- and then he must measure them against his requirements. If he is really a good -3- I,: ---_._.. _ - - - - - - " , - - - o manager (and he, himself, will be evaluated on this attribute), he will look beyond the immediate requirements of his own project and will decide whether or not some of his people can contribute more somewhere else. Secondly, since the responsibility for salary recommendations lies with the first line manager, and since increases are given for merit, the manager must decide who merits a raise, what the amount should b,e, and when the increase should be given. Finally, the manager must continually strive to improve the performance of the people who work for him. This means he must evaluate, he must instruct, and he must encourage his people. This is his opportunity to contribute to the profession. The third part of the evaluation payoff comes when the programmer is told openly and honestly what the manager thinks of the programmer's work. All of us want answers to a lot of questions -- our morale depends on them. How do I stand?' How good was the job I did? Where am I going? Will the jobs I do continue to be interesting -- to be challenging? Even if the answers to the questions are not what the programmer hopes for, his morale will be high if there is no subterfuge on the manager's part. It's amazing how hard people will work if criticism is constructive. And it's surprising how much they will learn if they are given timely instruction. c :0 Now let's try to define some guidelines that will help us realize the benefits of a good evaluation program. The guidelines I shall propose are really a large number of questions that have to be asked and answered on a continuing basis. They will take quite a bit of the manager's time, skill, and energy to answer in any responsible fashion. And this is one reason why I constantly preach that a manager shouldn't have more than about eight programmers reporting to him - - six would be better. We are trying to evaluate programmers in terms of their present performance and their potential for future assignments. We'll start with present performance. First and foremost, I think, it's necessary to know what the job is that you expect the man to do. It's just as important that the man know the job you expect him to do. Once there is agreement on what the job is, I think half the battle is won. Moreover, one of the factors that one must use in the evaluation is the level of detail necessary in describing- the job; and this must take into account the programmer's experience and pOSition level. -4- .----~-----..,...........-~"""--"-~~~~~--------.------------------...........- -.....'''-.-..."""'."""""".,.,...= ..... Now it must be possible to measure how well the job is done. In order to do this it follows that some quantifying" j ob parameters" must be agreed upon. By job parameters I mean things such as the length of time necessary to complete the program, some indication of the size of the program, some indication of the performance expected of the program when complete, and some statement of the functional capability expected of the program. Remember, of course, that it may not be possible to state such parameters when the program is first conceived; and so the job assignment may very well be to study the proposed program and arrive at such parameters. Now depending upon the length of time needed to complete tre program, it may be necessary to state some parameters that will act as checkpoints. After all, it's easy enough to keep track of a programmer who's working on a l-week assignment, but it may be extremely difficult to keep track of the work a programmer does when his assignment takes him 2 or 3 months or more. In the latter case, it may be necessary to block out the job into sub-jobs, each of which has some sort of a time checkpoint and appropriate functional specifications, and so on. Checkpoints generally call for a review. This, of course, can be a very iniormal thing or it can be quite a formal undertaking if several programmers are involved in projects which culminate in a common checkpoint. But these checkpoints are necessary not only to see that the proj ect progresses properly but also in terms of constant evaluation of the people doing the work. Once the job is complete, of course, the other half of the battle begins; and that is the assessment of whether or not the job was completed as expected. It's not difficult to know whether a person completed the job according to the required schedule or not; but if he didn't, what are the circumstances surroundip.g this? Was he permitted to do the job without interference? Were the specifications changed during the middle of the job? Does this program interface with other programs that changed and, therefore, required this program to be changed? Again, it's easy to measure the size of the finished program against the agreed-upon size. But if the program is too large, we have to ask whether the circumstances are extenuating or not. Was the projected size based upon knowledge of similar routines which had been done before for other machines or other circumstances? Should there have been a direct carry-over from the previous program to this? If this program is really a brand new program, was the amount of work underestimated? Were additional functional capabilities included in the program beyond the functional -5- o o specifications? Again, is the size of the finished program considerably less than projected when the job was first described? If so, is anything missing? Or was it just easier than we expected? Or did we discover new programming techniques? Similarly, was the job completed ahead of time? If so, was the estimate overconservative? And if so was that the manager's fault or the programmer's fault? How we measure the performance of the program is probably one of the most difficult questions we could ask, particularly if the program has any magnitude. But at least we can compare the performance to other programs with similar functional specifications if such programs exist. And the likelihood is that they do. Does this program perform better or worse than the old program? In either case, why? " ~,I Finally, in regard to functional specifications, does the completed program really have all the functional capabilities specified? If not, why is some capability missing? Was the feasibility of such a capability not proved? Or was it something not understood by the programmer in the first place? Again, if there is more functional capability in the program than asked for, what did we pay for this additional capability? Did we get it free in terms of schedule, size or program, and performance? Probably not. If not, was the price worth paying? One begins to see that these are not easy questions to answer. And, therefore, it should be obvious that when I said evaluation was a difficult and time-consuming job, I really meant it. Once the initial assessment in terms of job parameters is made, we have to undertake an additional evaluation which is probably even more difficult. What is the quality of the work? We have already addressed most of the external aspects of quality; that is, whether or not the program met its size, performance, and functional specifications. One other external aspect is the correctness of the program. How well has this program been debugged? Of course, if the program came in on time, this means that it was debugged on time. Whether it came in on time or not, a good manager will ask what are the nature of the errors that did turn up? What was the debugging plan? Did the debugging plan take all reasonable contingencies into consideration? And I guess, finally, would a better debugging plan have produced the desired results in a shorter period of time? o -6- ~/S o () 2.1' o Of course, to answer these questions, the manager must be pretty familiar with the written code. As a matter of fact, I don't know any way to judge the internal quality of a program without becoming thoroughly familiar with the program itself. This, of course, implies, too, that a manager can only make a quality judgment based on his own experience. Another factor regarding the internal quality of a program is the quality of the remarks that document the program. Are these remarks succinct and to the point? Do they appear where they are needed and not where they are redundant? Another factor one must look at is does the program use proven techniques, or is it innovative? I think that nine times out of ten the use of proven techniques will get the desired result with much less heartache tmn will innovation. This is not to say there is no place for innovation because there is. Again, though, it's a judgmental factor as to when one should be innovative. Finally, is the program elegant? Now how do you answer that one? Well, I suppose you look for simplicity; you look for coding techniques that save time, or produce more function, and that are well documented; and you ask whether the job is workmanlike. Are all the steps there, do they lead logically from one to another to arrive at the desired result in the shortest possible time? An elegant program to me is one which is characterized by simplicity, lucidity, novelty, and good workmanship. Before I talk about potential for future assignments, I would like to pause a moment and look back over what I've said. At this point the manager has evaluated a programmer's work with respect to a particular job assignment; that is, he has determined whether the job came in on time, that it met functional, performance, and size specifications, and that it was of a certain quality. So now the manager should be able to answer two questions. First of all -does the programmer meet the requirements for this job? If the answer is yes, then the second question must be - - can he do a better job and is there something more challenging for him to do? If the answer to the first question was no, if the Job requirements were not met, then the manager must ask -- why not? And here he must make a real value judgment -- was the programmer over his head, or was he not working up to his capabilities? If he was over his head, can he be taught? Or should he go elsewhere? And probably the most difficult question - - if he was not working up to his capabilities, what are the chances that he will next time? If the chances are poor, the manager bas a real problem. If there were extenuating personal circumstances or job-related circumstances, what can the manager do to help alleviate these? Finally, if there -7- 2/7 are personal problems, the manager had best stay out. If there are job-oriented problems, then the manager has a responsibility to try to correct the situation. Now let's look at the potential for the future. I'm going to assume that the man being evaluated has performed satisfactorily in his present assignment and that the assignment has been challenging. Otherwise, he has either not met the job requirements or has not shown any potential for promotion or added responsIbility. But if his last performance has been acceptable, then we have to look to the future. First, I guess, we would ask how broad is the man's experience? And here we get into the old argument of whether a person should be a generalist or a specialist. The argument, of course, is that the specialist can produce a given program without having to reinvent the wheel. My concern is that our people have specialized without having been exposed to the broad basic fundamentals of programming as a whole. This, of course, is due to the nature of the rapid growth in programming, but it doesn't really excuse the situation. There is no question that this is an age of specialization, but specialization usually comes after extensive schooling in the broad fundamentals of the discipline. Specialization without a broad base to start from is really a pretty unhealthy situation. Here again is one of the opportunities that we have to improve the profeSSion as a whole. And I really don't think we will be in good shape until the colleges and universities have developed well-rounded curricula in the computing sciences. Whenever possible, I think it's best to attempt to give our programmer some breadth of experience. Directly related with the question of how broad this man's experience is is the question -- how up to date is his technical knowledge? It's very easy for a man who has spent one or two years in a high pressure proj ect to forget some of the experiences he had in previous proj ects. This, again, I think is due to the lack of a well-rounded initial education. If a man has a good base to begin with, he is less likely to completely forget what he has learned in an area he is not working in currently than if he has had only brief experiences in several different areas. Several people have suggested that at least part of the evaluation of a programmer be based upon a well-defined skills inventory. I suspect this is a rather difficult thing to construct, but it would be interesting to try. Remember, however, that this is not a panacea. It is only one of the tools that a manager must draw upon in evaluating one of his people. -8- o o f! o c Another characteristic we must try to evaluate is the man's teclmical foresight. How well does he foresee problems? Is he able to avoid the problems, or bring them to his management's attention early enough so that appropriate steps may be taken? Or does he evade the problems? Another attribute to consider is the man's problem-solving ability. This is always considered a key characteristic in the search for new programming talent. But how do we evaluate it? That's a very difficult thing to do without seeing him in operation. I expect, though, that watching the man in action gives a pretty good clue as to his ability to face problems by himself. And I think that's what we really mean. Does he solve the problem himself, or does he need to come to his management for help? A corollary question, does he come to his management for help when this is really necessary - - when the problem is outside of his range of experience? This leads directly to another characteristic, his judgment and decision-making ability. When the man is faced with alternatives, how often does he make the right choice? Can he in some fashion characterize the probabilities of success for the various alternatives? Is his judgment good - - does he make the right choice more often than not? The next area that we have to evaluate is the man's self-knowledge and his self-improvement activities. Does he understand his own limitations and his own talents? What is he doing to remove his limitations? Does he have his own plan, or must he be led? Remember that one way to improve one's capabilities and one's experiences is to constantly seek out new and broadening assignments. Does he read the literature of the field? Does he go to seminars? Does he go to meetings and bring back new ideas? Just how wide are his horizons? One of my pet peeves is the man who cannot communicate. Over and over again I've run into people who cannot write clearly, cannot speak clearly, and it's questionable as to how clearly they think. Although many programmers tend to be reserved and introverted, this is not true of all of them by any means. You might think if a programming shop or a programming specialty is a one-man operation in a particular installation, that it doesn't matter w·hether he can communicate or not. Well, nothing could be farther from the truth. If a programmer is to be successful in working in a team, he has got to be able to communicate both orally and in writing. Particularly, if a man is going to be an analyst of any sort, he should be able to communicate clearly with the people he has to deal with in attempting -9- , ,.. .%# 4£ •au UOSAZ 4 ai,;: Wi TJAd ;.,,::,maSUM_a. .u Mil_a: = to offer his services. So many times I've heard people who are not computer-oriented say that they would love to use the facilities of a computing center but they can't communicate with the analysts or the programmers. I think it's up to us to see that we, as programmers, are able to provide the right kind of information and to show the uninitiated how our services might be used. And it does no good to do this with a chip on the shoulder. So one of the major questions that I would ask is how well does the programmer communicate with his peers, his management, and with novices and the uninitiated? I cant emphasize strongly enough that I think the man who can't communicate) although he may be a fine programmer, is a man whose usefulness is highly specialized. Now let's consider what the programmer has done for the profession. Has he had an opportunity to make a contribution? What has he done within his company? Has he made any technical advances? Does he make suggestions within his own area -- timely suggestions for new programs? Does he see ways to simplify what's being done? Does he attend seminars? Does he write papers and make presentations? Does he go to computer meetings? What kind of contacts has he made? Has he met people whom he can stimulate intellectually and who can stinlulate him intellectually? If he makes presentations, does he have something to say? How well is he respected within his own area, within his company, and by others in the profession outside of his company? I grant you that with so many people who are so new in the profession, not a lot have been able to make contributions. But I think again that it's our responsibility to stimulate our people into contributing. And not on a haphazard basis either. They need the guidaD ce of those of us who have had experi~nce. Now I want to discuss one other item that needs consideration both from the standpoint 0: present performance and potential for future assignments. This isonewhich most of us don't like to talk about too much, but it' s someth~ng- that's extremely important in this day and age. That's the question of cost control. Primarily, we have to ask how well our programmer has utilized machine time. This, of course, tie.s in with his success in debugging. But it's of utmost importance today because it's a major contributing factor to the cost of production of programs. The main question is could the man have used less machine time to debug his program? Three other cost factors are the use of supplies, the use of travel, and the use of overtime. Although the question of overtime is more likely -10- o 1 o 0 something that a manager will be judged on, unless a project has been directed to go into overtime, a person's ability to do his work during regular hours is one that should be looked at. I guess if overtime is necessary in a particular instance, we have to go back to the question of whether or not the job was completed on time. Of course, there are always extenuating circumstances such as illness, absence for other personal reasons, etc. o I I m certain that all of you can think of many other questions that one might ask in the evaluation of a programmer. I don't claim to be all inclusive - - II m just trying to suggest the general areas that I think are important to evaluate. Of course, remember also that most of the questions must be answered in light of the position a man holds. We ask much less of the newcomer than we do of the oldtimer. We ask considerably less of the junior programmer than we do of the senior programmer. As a matter of fact, this implies that position descriptions exist and that they're well written, that they're understood, and that they're generally applicable to the work being done. Remember also that good position descriptions will address many of the areas in which I have asked questions and hopefully will give some guidance as to what is expected of the person in the particular job. A good position description can be one of the manager's valuable aids for evaluation. Good position descriptions also should address promotability. I think there should be well defined criteria for promotion with indications as to what criteria may be sidestepped and under what circumstances. I'm certain most of you have seen cases where a programmer was not promoted in one department, was then transferred, and shortly thereafter promoted in another department. At the very least this suggests that the two areas were not looking at the same criteria for promotion. This is an extremely unfortunate situation and one that's hard to handle. I guess I can't tell you what kind of answers you need to these questions to be able to say that a programmer is outstanding or merely meets requirements or always exceeds requirements or does a very poor job. Standards are going to vary from company to company. I think most of us will find that we don't even have standards within our own company. So we really have a job here in providing the standards applicable to our own situation. There is a lot of work involved; but, as I indicated earlier, we think it' s a challenge and an opportunity. -11- C·\ "7 I. Let's remember another thing, too. The manager who looks constantly at all t.he attributes and all the characteristics of the orogrammer he is evaluating and who instructs him and who criticizes him constructively all the time is- a paragon that just doesn't exist. If most of us can look at many of these questions on a relatively constant basis and can do our best to instruct and criticize constructively, then I think that we're dOing quite a remarkable job. And I guess in closing I finally want to remind you that when you try to answer many of these questions and when you try to set up your own standards, don't forget the man who is given an impossible task. We need a hero medal -- second class. -12- o __ aWiM& o ADDRESS BY MR. G. W. WOERNER, JR. VI CE-PR ES I DE "!T & REG I ONAl MANAGER MIDWESTERN REGION I.B.M. CORP. c c COMMON Meeting September 7, 1967 Cincinnati, Ohio 0. 1 Address by G .. W. Woerner, Jr. - Vice-President & Regional Manager - 1fIV.lR Thanks for inviting me to your meeting and to the very fine luncheon this noon. I must say it has been a real pleasure and I have been tremendously impressed by the pace of your program and the am' :tious goals which you have set for yourselves here in Cincinnati. I am sure you must know how greatly IBM values the working relationship which has evolved over the years between our people and your organization. There is absolutely no substitute for the direct insight into YOlli'" individual and collective problems which can be gained"through this relationship. With the complexity of hardware, sofbNare and applications increasing at such astounding rates, we need your advice, counsel and constructive criticism badly. It provides us with a fundamental reference point from which to develop our plans and focus our resources on areas that best meet your needs. InCidentally, you may find it interesting that two particular subjects are coming through loud and clear. The first concerns the general area of our method of providing you with manuals and "technical information. The second question concerns the various types and levels of supporting education required frorn IBM. I can assure you that we are addressing these two particular points with exceptional urgency as a direct result of the emphasiS" which this organization has placed on them. As I observe the many contributions your organization has made to its members, I am espeCially impressed with the quality and quantity of the Type N Library. Today it contains over 700 programs written by members of the COMMON Organization. Your massive contribution to the 1620 Library has been of significant value to your own members, to IBM and to the state of the art as a whole. This experience should indicate the value of now turning your efforts to the equally' productive Models 20, 1130, and 1800 to build a similar library for your own use of these systems. o There are an awful lot of people these days sitting back and watching us in the computing industry. In fact, it has become a popular pastime to comment upon the effects of computing and automation on our society. &$.1$,=,1#1\;4*1" $I .4iW;i4MmxwilAUZUac &£bIh COMMON }J1eeting Address G. W. Woerner, Jr. Page 2 We, as IBM'ers, are especially interested in these commentaries. And I, for one, have been particularly concerned about one dimension of the industry which has been getting a lot of attention lately and I would like to spend the remaining time I have with you this noon talking about it. It has to do with the brQad conclusion reached by a number of contemporary writers that automation and, more specifically, the computer constitute a major threat to the individual in our society. These writers point out specific instances where automation has unfavorably impacted the individual and then conclude categorically that these instances constitute a trend at. the end of which is the comolete extinction of the individual in tomorrow1s society. And, that we are destined to live in a faceless world with standardized values, regimented routines of life and mechanical modes of thought. More often than not, the computer is used as a symbol of that threat. I guess the whole thought stream got started as early as the mid r30'swith Aldous Huxley's "Brave New 'Norld". He pictured a technological SOCiety living in doped-up bliss under the watchful eye of a powerful tyrant. George Orwell depicted a similar grim scene of life under the ever-present electronic eye and ear of Big Brother. Today, writers such as Galbraith and Vance Packard are further soothsayers of the impending doom. Packard, in his book liThe Naked Societytt, says, "In the Western World today, swirling forces ·are causing whole populations willy-nilly to change their attitudes, ideals and behavior patterns". One of these forces he describes as "the electronic eyes, ears and memories". Supplementing these more renown writers are self-appointed investigators who use the public media to broadcast sensational exposes of how man today is losing the battle with automation. Most often they take some form of the theme of a man's personal identity being replaced by a number of holes in a punched card. They usually conclude that these mysterious forces are somehow thrusting men pell mell toward a conformative life of grim, mushy blahdom overseen by the sterile surveillance of the master machine. Before we rush to take a position for or against these observations, let's pause to define what it really is that we're afraid of. -sts te-l-l us t--n' . or~ us.'na~ ...a.- ~UllltJl;;::J..Ll..Ll1.J -. - -- --,,!--- .w::::;c;u ___ \,v v'.H.~","".L""U ",..~'"'"t....'; .... h h;C' PSyChOiog . 1 at eacn ........ personal worth, and that a key part of that need is identity as an individual. ..3 "',.. 0..1 "'"rt71"'\ ..., . . . . . . o COMMON Meeting Address G. W. Woerner, Jr. Page 3 I would define individuality as the desire of each' man in our society to direct his own destiny. To set himself apart from the rest of society as a person who has unique tastes, thoughts and goals. He needs to have the prerogative of living as he wants and developing himself toward ends which he has defined. He doesnrt want society or governments or employers or any other group (much less machines) to plan and manage his life for him. He wants the freedom of choice which allows him to select the kind of food, clothing, shelter, education, employment and leisure which suits him and his family best. The uniqueness of this pattern which he chooses identifies him as an individual and establishes his identity. What we :re afraid of then is that our society is becoming so organized that the above choices will not be ours, but will be provided according to some kind of plan. Welre afraid that those in seats of power are developing some plan based upon statistical models and nor ms describing what each of us should want and need. We're afraid of the Similarity of our housing, the food in the supermarkets, the clo~hes on the racks, the cars on the lots, the standardization of our educations -and the impersonal treatment by service organizations. In short, we Ire afraid because the patterns we see developing across our society appear to be a challenge to our compelling' need for individuality and personal identity. I must join in these observations and agree that many of these trends are, in fact, in motion. I canrt agree, however, with the conclusion that automation, or computers, have been the cause of these trends nor do they constitute the current threat. Computers and their use are a result rather than a cause. A result of the very same basic force which is responsible for the threat to our individuality. That force stems from the historic insistence on the part of the "have nots" to join the "haves II. Whether they be the poor or the emerg'ing nation reaching for food and shelter, or the middle class stretching for higher living standards, they represent a constantly growing demand for a higher standard of living for more people. Man's success in meeting these denlands, many times with the help of machines but sometimes without, has resulted in a society geared to volume rather than to individual needs. o 4 ~, Now, whether we look at consumer products, human rights, education or personal services, this demand and response goes through three stages. : T.: ,ItA4I••t£ 4t2tA4US;ZJAgMWauuaa============w A4A I~ I COMMON Meeting Address G. W. Woerner, Jr. Page 4 In the first stage -- the benefit is only available to a select portion of the population. They are the "haves". They have an exclusive, if you will, on the benefit -- and it uniquely distinguishes them from their fellows. o Stage two is a natural follow-on -- the "have nots" demand the benefit and society's inqenuity to supply it is motivated. The result is that more and more "have nots" become Ifhaves". But in dOing so, the benefit loses a big ingredient -its exclusiveness and thus, its .individuality to the possessor. The third stage then is, or should be at least, an attempt to stylize or expand the benefit into unique subs?ts so that even after mass production and distribution, the benef~t regains what it lost in stage two --------- an appeal to the individual. Let me illustrate with some examples -" In the early 1900's every automobile was designed specially for the buyer and then was hand made. This was the first stage. You can observe several things about it --' ' 1. Only a few could be produced. 2. Only a very small percent of the population could afford them. 3. Ownership of custom autornobiles was certainly a prestigious and individualistic thing. Within a few years, however, pressure developed from those who did not have this luxury and we enter stage two -- as a response to the demand ...••. Henry Ford's ingenuity created the technique of mass production and he cranked out huge q1.;lantities or one modeL ••.. the Model itA" at a price that more people could afford,and in the color they wanted .••.. as long as it was black. At this point, Ford satisfied the demand of the masses but he lost something in the process. He sacrificed the idea of a "custom" car designed and built speciiically for an individual. The customer no longer had a car which represented his individual tastes and distinguishe d him from his neighbors. All had black Model itA IS". I ,I But the story doesn't end here -- rather it moves to a third stage and this is the key point. Today we can select an automobile from an impressive array of models, styles, color variations, and features which suit our individual tastes. In fact, that myriad of options and combinations, is so great that every Single car producea by Ford alone this year cuuiu hd.V~ 'beel-,L diff6i"6ri,t i:rGm ~ll others without going outside the standard features. o ------~~--------------~~~~~~~--~-- ,I COMMON Meeting Address G. W. Woerner, Jr. Page 5 What brought on stage three? What accomplished this return.to the custom car? A demand for individuality responded toby more sophisticated techniques of automation, aided in no small way, by the computer. Let's take another example to illustrate the point .••.• education. Stage one ....• in the good old days -- the right to education was enjoyed only by the few, primarily royalty -- in fact, as late as 1900, only 94, 000 people in the United States graduated from high school. Today we consider education to be the birth right of every man, woman, and child -- not just royalty. The ~esult is the phenomenon realized in stage two - - a high school education is a standard for the majority of our population and over a half million students are receiving college degrees each year. However, companion with this has been the depersonalized multiversity with campuses swarming with 20 to 30, 000 students. Overcrowded classrooms - where an instructor addresses a hall with upwards of 2 to 300 students •.... and Standardized curricula - where the pace of instruction and the content is geared to the average rather than to the individual. We readily see that in our attempt to satiate the demand, we've already sacrificed the small classroom environment, the tailored pace of instruction, the personal guidance and touch of the teacher, and to a great degr.ee, the ability of the individual student to pursue courses of study which are to his particular interest. Interestingly.enough, in this example one can't even associate the move to the second stage with automation. For we accomplishe d both the response to the demand of the many and the loss of individuality without it. 0 , , ". ' Stage three is still in its tnfancy. Significant developments are already on the scene in the form of computer aided instruction. A system is now available and in use which allows a student with his own visual display terminal to learn with the computer in a conversational mode .••.. the process is personalized to the extent that the material is presented and dealt with at the learning rate of the student. The human touch is preserved by the teacher who, upon being COMMON Meeting Address G. W. Woerner, Jr. Page 6 relieved of the mechanics of presenting volumes of material, has time to devote herself to that student who is having problems or needs counseling o These techniques show promise of moving education solidly into stage three. A stage which satisfies the demand for higher education for more and more people, and yet preserves the integrity of the individuals. I myself have' explored many other examples and I know each of you could come up with many' of your own. But these two suffice to illustrate my premise. Let me review .... 0 First, there are today, trends in our society which are a continuing threat to each of us as we pursue our personal identity and individuality. Second, these trends do not stem from the use of automation or the compute r, but rather are a by-product of man's organized response to the steadily increasing demand of the many for the benefits enjoyed by the few. And finally, the computer has demonstrated its capability to contribute to the development of the last stage of these trends ...•. the pursuit of our individuality. The advance of technology and automation cannot, and should not, be stopped -for it is not the adversary of the individual - - but the ally. ,';'"-". )\.,..,"/ So I would say to you as members of this organization o • • • • as key participants in the field of automatioI.L .•. _. we must be prepared to proceed with confidence -for there is no shame in progress -- our efforts are not a betrayal of ourselves, but rather an expansion of our opportunity_ And this point must be made to our critics. In fact, you might want to think about adding this one to the objectives of your group. I'd like to thank you again for the opportunity of joining with you today and wish all of you a very successful conclusion to your meeting. \,V .~" !230 o SESSION NUMBER T.3.1. SPEAKERS DAN FULLAN (IBM) - PRESENTATION ON DOS III • J. ALVAREZ & W. SELSMEYER - QUESTION & ANSWER SESSION ON DOS. MODERATED BY D.R. Me IL~AIN DISCUSSION DOS III (ACTUALLY A NEW RELEASE OF DOS II, NOT FORMALLY NAMED DOS III) - SEE ATTACHED WRITE-UP. THIS IS SCHEDULED FOR RELEASE IN S~ALL PART 11/67 & COMPLETE 4/68. QUESTION & ANSWER SESSION FOLLOWED. "' " 0 '.' .'I !f ~31 o SYSTEMj360 DISK OPERATING SYSTEM IMPROVEMENTS ...,./ /~ \\. f(--""" -.IY '., ~~.----.----- .. -----.-------- -----_._._--- .~- ,... 1 Scheduled Improvements to DOS I would like to spend the next few minutes or so discussing some significant improvements to the Disk Ope~ating System. The.se improvements which will be available with subsequent ,releases of DOS include Additional Device Support, namely the 2314, Additional Features in the Supervisor to improve performance, for example, seek separation, Increased Capabilities, such as expanded muitiprogramming capabilities, and'a number of related features to simplify operations, for example, label handling. Let's go over these now in a little more detail. . 2314 Support The 2314 direc~ access storage facility has received wide acceptance in the mtermediate systems marketplace. The programming support provided for this device reflects this acceptance. Full system support will be provided for the 2314. This includes system residence, that is, residence for all IBM components currently supplied in DOS/360, except Autotest, systems input and output on the 2314, full systems libraries support, full data management support including QTAM, Sequential Access, Direct Access, Index Sequential Access, and Device"Independent Access. All current DASD utility functions will include support for the 2314. Additional support in the form of new special purpose utility programs will be provided for both the 2314 and the 2311. These utilities include a Volume Table Of Contents Display, an Initialize Disk Program, an Assign Alternate Track Program, a program to copy Disk to Disk, and programs to Copy and Restore Disk with Tape and Cards. Full language support is provided for both compilation and object time support. This includes the Assembler, COBOL, Basic FORTRAN and RPG. We intend to provide PL/I and Sort/Merge support. Information will be provided at a later date. All support will take advantage of the increased capacity of the 2314 as well as the speed of the unit itself. Simplified Label Handling We have modified the labeling procedures in DOS to provide for a simpler more efficient operating environment. These procedures will involve the use of fewer cards and label cards that are reusable. 'rne formats have been improved and more room has been provided for standard labels. In addition, standard labels can now be used for Index Sequential and Direct Access files. Two type s of standard labels will be provided. Standard labels will be available to programs operating in all three partitions while partition standard labels will be available to programs in the specified partition only.\A total of six tracks for user labels and partition standard labels are available. 'On the 2311 four additional tracks and on the 2314 fourteen additional tracWs will be provided for standard labels. We have then the possibility of ~abels appearing in one of three parts of the label cylinder. It may appear as a user label associated with the specified partition, as a standard label associated with that partition, or as a standard label available to all partitions. \ o Ii The increased capacity for standard labels and the ability to use standard labels for direct access and index sequential files should greatly reduce the number of label cards and handling required in an operating environment. The number of cards required for label handling has been reduced. We have a DSKL card which replaces the VOL and DLAB cards required today. The parameters for this card may be expressed in a variable format, some of the parameters have been made optional. Date need no longer be expressed as absolute creation and expiration dates, a retention period may be substttuted. This will enable the DSKL card to be reusable, that is, once label cards have been set up for a production run, the same cards may be used each time the run is executed. o A new EXTNT card has been provided. In this card the upper and lower limits of the extents do not have to be expressed in absolute form. You may specify relative track, that is, the sequential number of tracks relative to zero where the extent is to begin and the number of tracks the extent is to contain. On input files the information that is supplied by the extent cards can also be taken from the label itself so that in many cases an extent card will not be required. Data sets on tape are defined by means of a new TLAB control card which replaces the current VOL and TPLAB cards. Here again a retention period may be specified instead of an expiration date. When a volume label is not found on a labeled output file, it will automatically be created based upon a serial number supplied by the operator. A multi-volume file may be opened at other than the first volume. To summarize the label processing capabilities of DOS, the number of cards required for disk labels has been reduced from three to two and in some cases only a single card will be required. A single card will now suffice for tape labels instead of the two cards previously required. In addition, since retention periods can be specified these cards are reusable, that is, new label cards need not be punched on a daily basis. The expansion of the standard label facilities both for the number of standard labels that can be stored and the types of files that can use standard labels provides for an even further reduction in the label cards required in an operating environment. I am sure that those of you involved in day to day operations will appreciate the reduced burden on operations personnel made possible by these improvements. Seek Separation The seek separation feature was designed to improve the performance of systems running under DOS. This feature, provided by a supervisor option, enables the supervisor to separate a seek from its associated read or write so that the seek can be separately scheduled. This means that multiple seeks can be issued to devices on a channel and the reads (;' -3- o and writes scheduled as the seeks have been completed. As this is a supervisor function, it will automatically apply to programs written at any language level and operating in all three partitions. The benefits derived from this feature will increase the larger the number of devices on a channel. The implementation of this feature is such that when a seek has been issued to a device the arm cannot again be shifted until the I/O operation that initiated the seek has been completed. In other words arm stealing has been prevente d. Following the issuance of a seek the channel is available for scheduling other I/O operations. In a multiprogramming environment this feature is particularly important where the different partitions have a mix of input/output requests for a single channel with multiple direct access devices. The seek separation feature is specified at Systems Generation time and will add approximately 200 byte$ to the size of the supervisor plus 4 bytes per direct access device. Full Track Add c' We h0-ve improved the efficiency of the index sequential access method when adding records to the file by utilizing a full track add feature. This feature enables the user to provide room in core for up to as many physical records as can be contained on one full track. When a new record is added to an index sequential file that record is inserted in sequence and records that have a higher key are shifted to make room for it. The highest record on that track will then be placed in me overflow area. Without me core data feature when a logical record is added to a block each block on that track must be read, the records internally shifted, and then written back to disk. When the core data feature is specified, two or more physical records up to a full track will be read at one time. The records shifted internally and men written out togemer. For example, when room in core is provided for a full track, it will take 4 1/2 revolutions or less to add a record to that track. While without me feature, 3 revolutions will be required for each physical record on that track. Let us suppose a blocking factor of 4 physical records per track. When adding records to mat track using the core data feature for a full track add, 4 1/2 revolutions are required compared to 12 revolutions without the feature or approximately a 300% improvement. To utilize mis feature, an I/O size parameter must be specified in the DTFIS to reserve room in core for the additional data area. Core data equals yes must be specified in the index sequential module itself. The additional core requirements for this feature are 16 bytes per DTF and 1 75 bytes in the index sequential module itself. Cylinde r Index o We will also provide the capability to maintain all or part of the cylinder index in core. This will have a significant impact in efficiency during random retrieval, since the seek and read time of the index itself can be completely eliminated. This facility is achieved by specifying the name and size of the area reserved for the cylinder index in the DTF and specifying core index equals yes in the index sequential module. Where there is not sufficient room in core for the entire index it is possible to make only a portion of it core resident. - 4The core requirements to use the cylinder index in core feature are minimal. An additional 24 bytes are required for the DTF plus 150 bytes in the index sequential module. This of course is in addition to the core required for the index itself. Both the full track add and the cylinder index feature are available only in the Assembler language. Multiprogramming In the area of multiprogramming we have made a number of improvements to programs operating in foreground partitions. In the current system foreground programs are initiated by the operator individually by a foreground initiator. We refer to this as Single Programming Initiation (SPI). Included in the improvements for multiprogramming is another method of initiating foreground partitions called Batch Job- Foreground (BJF). This option will allow a batch job .::>tream to be executed in the fore'ground partitions. Other multiprogramming improvements include individual communication regions, checkpoint/restart and the use of systern logical units in the foreground partition. These features allow for execution of all user programs regardless of source language in the foreground partition operating under BJF. Let's examine foreground batch job capabilities. In addition to the background partition, one or both foreground partitions can be operated in the batch job mode if sufficient Input/Output and CPU facilities are available. The requirements for operating foreground programs in batch job mode are a minimum 10K partition size, separate systems input and output files for the partition and the specification at system generation time for batch job program support. The batch job foreground option will add approximately 350 bytes to the basic size of multiprogramming supervisor. This .includes the storage requirements for a communications region for each of the foreground partitions. If disk system input and output is desired for the foreground, an additional 250 bytes or a total of approximately 600 bytes will be required in the supervisor. All system class logical units except SYSLNK will be usable by foreground partitions regardless of whether they are operated in the batch job or single program initiator mode However, if the single program initiator is used then SYSRDR, SYSIPT, SYSPCH, SYSLST must be aSSigned to unit record devices. The IBM supplied utility programs will be distributed to run in the background area but may be link edited by the user to operate in the foreground with batch lob initiation. No other types of IBM supplied programs are intended to be available to the foreground partitions. o Let's take a look at some of the environments that are possible with the Disk Operating System. In a 16K system we can run a batch job stream, where 6K is available to the supervisor and 10K available to background programming One restriction in this environment is the inability to compile COBOL programs since the COBOL compiler requires a minimum of 14K. 0 -5- O In a 24K system with a supervisor that runs between 8 and 10K, we can have a background program of 10K plus up to two foreground partitions operating with a single program initiator. t ,', At the 32K level besides operating a 10K background program, we can have one foreground program operating in the batch job mode and a second foreground program operating with a single program initiator. At the 64K level we can have three programs operating in a batch job environment, background, foreground 1 and foreground 2. The supervisor requirements would be at least 10K, with 10K minimum requirements for background and foreground programs. The additional 24K that I have shown available for the background could be distributed amongst all three partitions. c Let's summarize the improvements in the multiprogramming capabilities of DOS. I have mentioned the features available for background programs, foreground programs operating with the batch job initiation, and foreground programs operating under the single program initiator. Program initiation itself is automatic when working from a batch job stream for both background and foreground programs. Under the SPI it is still operator initiated. Individual communication region will be provided for each foreground program operating under the batch job mode. The CheckpOint/Restart facilities now available to background programs will also be available to foreground programs operating under the batch job mode. The systems service programs such as the librarian and linkage editor, the Language Processors and Sort/Merge can be executed only in the background partition. Utility programs will be distributed for execution in the background partition but can be link edited by the -qser for execution in the foreground where a batch job mode has been specified. The multiprogram system utility macros as today will be available in all partitio~lS. Minimum partitions sizes are for background program 10K, 14K if you want to compile COBOL programs, 10K for batch job initiation in the foreground and 2K vlhen the single program initiator is used for foreground programs. Device Independence There will be a new device independent access method for systems units. This access method DTFDI and the device independent module will support sequential processing of unblocked records for files on SYSLST, SYSIPT, SYSPCH, and SYSRDR. Using this new access method the user can change device aSSignments at object time without having to reassemble source program and without explicit lmowledge of the functional characteristics of the assigned device. Besides providing device independence at object time the use of the device independent module will reduce core storage requirements since one module can be used instead of several as are required today. o ;).37 - 6Private Libraries We are adding a new facility to DOS to provide for a librarian function that will allow users to create and use private source and private relocatable libraries on packs other than the system resident pack. This new facility will give the user greater flexibility in allocating library space with the result that more room on the system pack itself will be available for an expanded core image library. The number of private libraries is not limited, as many private libraries as desired may be created. However, only one of private source and/or relocatable library can be operative on the system at anyone time. It is also possible to use the relocatable and source libraries on the systems resident pack in combination with private relocatable and source libraries. In addition, it is possible to eliminate the source and relocatable libraries on the systems residence pack. Library maintenance and service functions will apply to these private libraries. o CSERV We have added a new librarian service function called CSERV. This function will enable the user to display, punch, or display and punch a specified phase or complete programs from the core image library. This facility will give the user the ability to transfer programs or phases from the core Image library of one systems resident pack to the core image library of another systems resident pack. Since SYSPCH may be assigned to tape or disk an intermediate card step will not be necessary. The display, the punch, and display punch functions can be used for a phase, a program, or the entire library. c New Resident Utility Programs We have provided in addition to the existing utility programs six additional utility programs resident under DOS. The VTOC display program will enable the user to display the labels contained in the volume table of contents of a disk pack. This will enable him to more easily keep track of his files and their extents. The output of the VTOC program may be directed to a printer, a tape file or a disk pack. Labels are identified by their locations within the VTOC and their format types. There are no special utility modifier cards required for this program. All that is necessary to execute the VTOC program will be a job card, assign cards, and an execute card. Another utility program is the initialize disk prograln. This program prepares the disk pack for use on the 2311 or 2314 disk drive. The initialize disk program first checks the volume table of contents to verify that there are no unexpired files on the pack. It then generates home addresses for each track, does a surface analysis assigning alternate tracks when required and pre-formats the volulne table of contents. (;' - 7- o The alternate track assignment program is used to assign alternate tracks to replace defective tracks on the 2311 or 2314 at any tirDe other than when initializing the pack. When an alternate track is aSSigned the records contained on the defective track may transfer to the alternate track. Full diagnostics are also provided. Three separate programs are provided to copy and restore disk packs. These are copy and restore disk with card, copy and restore disk with tape, and copy disk to disk. These copy programs may be used to copy the entire volume or just specified files. When the copy volume function is used the entire contents of the volume including the IPL records, volume labels, and the VTOC will be copied. The copy file function permits the transferring of a data file from disk to cards, tape, or another disk pack. Availability There is one more important subject to be covered. That is the availability of these improved facilities of the Disk Operating System. The improvements in the tape label area will be available from the Program Information Department November 17, 1967. The rest of the improvements that I have discussed for the Disk Operating System will be available April 5, 1968. o o Sf-SSt ON NUMBER T • 3. 2. SPEAKERS NO FORMAL SPEAKERS_ WADE NORTON, ACT 'G. CHAIRMAN, HAD BEEN SCHEDULED TO PRESENT A PAPER ON RUST ENGINEERING CO.'S. 16K OS WHICH RUNS ON A 65K MACHINE. THE OS PROJECT FELT THAT MOST OF THEIR MEMBERS ALREADY KNEW THE ADVANTAGES, AND THAT THE PR~SENTAT10N COULD BETTER BE MADE AT A LATER MEETING WHEN MORE PUBLICITY COULD ATTRACT MORE DOS' ERS WI OR PLANNING 65K CORE. DISCUSSION WE THEN DISCUSSED SAN FRACISCO (OR LATER MEETINGS). THE NEXT MEETING NEEDS TO COVER A. LINK EDIT (I), SCHEDULER (I) B. LINK EDIT (II), SCHEDULER (II) C. OS FOR THE USER OF SMALL 360'S, PRESENTATION OF PAPER ON RUST'S SYSTEM & PANEL OF OTHER SMALL OS'ES. ON RUST'S SYSTEM & PANEL OF OTHER SMALL OS'ES. O. PLANS & ORGANIZATION SESSION. E. SQUAWK SESSION. c ~I '-'I SESSION NUMBER SPEAKERS T.3.3 HARISH J. JAGTIANI, RICHMOND ENGINEERING CO., INC. nN FORTRAN PROCESSOR FOR DRILLING TUBESHEETS nN NC MACHINE (' ~} o FOR TR AN PR OCESSOR FOR DRILLING TUBESHEETS ON NC MACHINE o by Harish J. Jagtiani Richmond Engineering Company, Inc. Richmond, Virginia presented at COMMON, Cincinnati Meeting September 6, 7, & 8, 1967 NUMERICAL CONTROL Numerical Control (or NC) is a control systern usi.ng punched tape or other automatic control devices to direct the operation of machines and 1.xlachine systems. Numerical Control provides a highly accurate and efficient means of positioning or controlling the path of a tool. Machine tools are classified as being point-to-point or continuous i.n operation. "Point-to-Point" implies that machining operations are only at certain locations on a part and that the cutter is retracted [rorn the piece before it moves to another location. Point-to-Point, particulary valuable for precision drilling, boring, reaming, involves automati.c coordinate setting. Careful layout, therefore, is less dependent upon the operator. "Continuous" (or contouring) implies that there is no retraction of the cutter as it produces a path in moving throughout a specifi.ed area. Poi-nt-to-Point machines operate in two dimensions; continuous machines in two or three dimensions. c NUMERICAL CONTROL AT RECO The application that we are particularly concerned with, at Richmond Engineering is for NC Point-to-Point machine tools .. In the manufacture of process heat transfer equipment, a good portion of-t-h-e--work is involved in the drilling of holes in the tube sheets and baffle plates of heat exchangers and the bolt holes in the flanges'. With a view to secure some of the benefits from automation, Richmond Engineering decided to acquire a NC drilling machine. In 1961, we purchased Pratt and Whitney's Tape-O-Matic numerical drilling machine. It is a single machine with a table working surface of 30" x 20" and a transverse table travel of 15". This machine is capable of taking care of the drilling for R ECO Standard Products up to 16" diameter. The experienc e gained ·with the Tape-O-Matic proved that NC machines could certainly provide tremendous advantages. With an increase in business activity Richmond Engineering decided to purchase a much larger drill press which would not only produce dollar savings but replace some of the existing manual drills and still have enough of excess capacity to handle increased business. In late 1964, an order was placed for the American NC 819-32 Travelling Openside Boring and Drilling machine. This has an actual work area up to 9Z - 1 - o inches wide and length of 15 feet. is currently in operation. o This machine has now been i.nstalled and The job planning procedure for this machine was similiar in many ways to the Tape-O-Matic. The machine has a "floating zero" or a "full zero shift" feature, as shown in figure 1. The reference point is set at the center of the tubesheet, which then allows the parts programmer to give all axi.s dimensions relative to the workpiece. The programming done manually was hand-written on a process data sheet. DATA PROCESSING FOR NUMERICAL CONTROL MACHINES In the preparation of "programs" or "instructions" to govern the movements and processes of the numerically controlled devices, there was the problem of cummulative tolerance errors being introduced through'manual computational procedures. An investigation was undertaken to determine what aid could be offered to alleviate the problem of computational tedium and inherent accuracy difficulties associated with manual preparation for NC processes. The thought of computations and accuracy naturally suggested electronic computers as a possible means for solution. o IBM has developed a simple language AUTOSPOT (AUTOmatic System for Positioning Tools). AUTOSPOT is a general purpose computer program designed to aid the parts programmer perpare instructions for NC Point-to-Point machine tools. The parts programmer can describe the required operations in a familiar language, without calculations, repetitions, and the tedium of output format preparation. The AUTOSPOT general program processor receives the input information, performs various operations, and delivers outputs to the post processor. The post processor converts the information into the data required to perform the machining by a specific machine tool. Since there was not an existing post processor for the American drill and writing up on would involve considerable time, several months, investigation was directed to prepare an aid to our specific pr,oblem that would specify the locations of the centers of equally spaced holes on the tubesheet and also the locations of the centers of any number of equally spaced holes on the bolt circle. In this effort to relie've time consuming, laborious, and technician type work from the shoulders of the part programmer, a generalized computer program has been developed to perform position calculations for tubesheet hofes and bolt circles configurations. These configurations are COlnInOn enough in our line of products and for a firm using numerical control equipment to justify such an approach. o - 2 - -------------------- ......... .,,~,---,-~~-~~~~~~-~~~-~----------- EXPLANATION OF TYPICAL LAYOUT From a typical layout of a tubesheet you will notice the tube holes are equally spaced and so are the rows of tube holes. Further the layout on one side of the center line is generally a ITlirror iITlage of the other side. There are tw·o configurations of tube holes that we are conc erned with. tubes are either on a triangular pitch or a square pitch. o The Lets consider the center of the tubesheet as the reference point with coordinates of (O. 0, 0.0). Knowing the pitch of the holes, one can easily compute the coordinates of each hole in each row. Hence for the first row the coordinates of holes ITlarked A is (1. 0, 0.0), B (2.0, 0.0) and so on. For the second row the coordinates maybe (1. 0, 0.5), (2.0, 1. 5) and so on. We can compute these coordinates manually and put them down on a process sheet. N ow if a row of holes wa s defined by the following statement, SY = 0.0, SX = 16.0, EX = -16.0, NH = 0.0 we can compute the coordinates of each hole in this row. Pitch = (EX - SX) / (NH - 1) = {16. 0 - ( -16.0)) / (33-1) = 1.0 o Hence l\; 1 N N 2 3 N N 32 33 Y Y Y 0.0 0.0 0.0 X - 16. 0 X - 15. 0 X - 14.0 Y Y 0.0 0.0 X -I- 15.0 X + 16. 0 This proc edure is the logic of the computer program. The flowchart further outlines this routine to compute the coordinates of each hole, figure 2. FILLING THE INPUT FORM A typical input data form filled up is shown in figure 3. The master card contains some general information followed by rCODE, the reference point (corresponding to the Datum Reference to permit the specifica~ions of point coordinates relative to the most convenient origin), total of detail specification cards, total number of holes to be drilled, type of pitch, o pitch and bolt circle specifications if any. The detail card specifies coordinates for eacH. row or part of each row in some cases. It contains SX, SY, EY, NH, JT and EXCEPT. Where SX SY EY NH JT EXCEPT - Starting X coordinate Starting Y coordinate Ending Y coordinate Total number of holes Total number of exception holes Position of exception holes EDITING THE INPUT After the input form has been filled and the cards punched we run an edit of the input data. The edit program checks the input data for completeness and consistency. The edit program checks the following: 1. Code 2. Bolt circle specifications 3. Pitch of the holes 4. Spacing of the rows of tubes 5. Tot a 1 n urn be r of hal e s 6. Total numbe r of detail cards and so on. The output listing from the edit may appear on the first run, somewhat as shown by figure 4. After the e'dit IS run the errors - if any - are corrected, and the input deck is run through the processor. The processor punches the output ca-rd a'nd also lists each block of the data for the NC machine on the printer. A listing of the output is as shown in figure 5. USING THE 3 - SPINDLE DRILL o On the American NC Drill we can also put a 3-spindle attachment. Pre-paring a tape to run with the 3-spindle drill is naturally somewhat different from that for the single drill. The attachment we have and the usual pitch of the holes we maintain limits drilling three consecutive holes. Instead we have to drill 3 alternate holes at one setting. For example if we had 6 holes equally spaced in a row, we first center the drill over hole number 3 and drill holes 1, 3, and 5. Then we position drill over hole number 4 and drill holes 2, 4, and 6. In other words we drill groups of 6 holes in 2 operations. () The processor automatically takes care of this. Now we do have rows of holes of less than 6. These holes we pick up on the single spindle drill. The processor hence is designed to segregate groups of holes to be drilled with the 3 spi.ndle drill and those with the single spindle. These two data sets we store on the disk. Each record in the first set is accessed and cards punched out for the same. Then the same is done for the sec ond set of records. The general flowchart of the processor is shown in figure 6. LIMITATIONS OF THE PROCESSOR Obviously the processor we are talking about has its limitations. It is not as versatile or powerful as the AUTOSPOT processor. For instance, one half of the tubesheet is generally symmetrical about the axis. If the parts program were written in AUTOSPOT language, just one statement would have sufficed to invert the pattern on one side to the other. But with our present processor we h?-ve to define each row of the other half again .. Of course this is not too difficult, because all the parts progralTIlTIer has to do is to reverse the sign for the SX dimensions. However, this is not what you may call very sophisticated. We also have the problelTI of not being able to define patterns other than the bolt circle or a row. Not long back we had a job which had a pattern of 3 concentric circles each with 36 holes and another pattern within the triangle forlTIed by the circles. There were roughly 8000 holes to be drilled. Doing the programlTIing manually would have taken ages. So we wrote a special program which consisted of routines from the original processor. This was not difficult but certainly took som.e effort and tim.e, which could easily be saved by using AUTOSPOT. PUNCHED/TAPE PREPARATION The data input to the machine tool is one inch perforated 8 channel tape ln accordance with EIA standards. Initia:ly the tape was manually punched on a Friden Flexowriter. This was both time consuming and laborious task full with human errors and omissions, thus offsetting some of the advantages gained by using the computer. When we changed to card output from the cOITlputer we added a Friden Automatic Card-to-Tape Convertor to the 2201 Flexowriter. Now the cards are fed in the card reader and the tape is automatically punched out. - 5 - o CONCLUSION This processor as you can see is not very sophisticated or powerful as many others. However it has proved extremely easy to use for the parts prograr,nmer. The programmer does not need any knowledge of computers or computer languages. It has considerably reduced the lead time in preparing tapes foythe NC machines -- from days to a couple of hours. And finally it has helped a small manufacturing company with somewhat limited skills and resources to inc rease its producti vity and product quality. o - 6 - :J. '17 ---- _._-- -----_._-_ .. ., .• - .. - ---_ .._-.' ,,_ .. - .- .---------.. ---------~---------... - ... -.- .. ------ #, #2 BOLT -x ___ ----'L-,.--- It ·v· A• ./ AXIS Establish At C e n t e r 0 f W0 r k. P ieee after Loading it on the Table. #4 X=-y=_ ----TABLE------------ ·x· -AXIS ~--~~~~~--~A· FIGURE 1 -_ .. _...... _---_ _.. - - - - - - - .1)£ TAI L C. /i 12)) .•.... 0X, .sY, E Y) 1'Jf1 ) NE, £,XCEPT(NE) , . . - - - - - - - -j~ . ----T .j / .sy- EY NH-i _----l 'f PI7 C I-I PIlcH .____. . . .1. tV::=. N-f-i SI o FIGURE 2 II I , , / C ,':)1,,1 PI) R. r=.. COrv;PUT E. j) TO 0,IVe",; py=- l I Program. "NCRECO!' I Sheet RICHMOND ENGINEERING COMPANY, INC. 2. Of NUMERICALLY CONTROLLED DRILL INPUT ;V b, c.~ Input Prepared By 70b7, 30 RECOJobNo. r Input Checked By RECODrawingNo.J)-b72.02.-! Custom.er Nam.e -------------------- r" job nurnbe r ........ bv r" ~ 0 -oJ E 'U no. of reference x-axi s ~ rj rc ending '+-lo (/)(J) starting starting ..--4 rj ;.. x-coo rd'lnaie y -<.:cordin ate y-cmrdinate o a jt .-< c...c: ,IX., ."tv,v ,v, v 2-9 1 ,L. 01/, 2 - rt. ).l t"I 2 , 7.~ -I: 2,Q. , +1 3,9 3,t . r3.2 31 · I 1 ., 1 1 , .. · ·, , , 1 t t 1 , , 1 1 1 1 f I , , I . 1 f , , , f , · , , , · 2.¢ , .L , 1 ~ To > , , I , , 1 . ALL COLUMNS SHOULD BE CODED Frn F Ar:H LINE. FILL WITH ZEROES WHERE NECESSARY. ICODE ;;; 1 for tube sheet only = 2 for bolt circle only = 3 for tube sheet &: bolt circle = 4 for tube sheet (3 - spindle drill) = 5 for tube sheet & bolt hole s (3 - spindle drill) JP = I for triangular pitch = 2 for square pitch LV = 0 _ if = I · · I , , . · , 3.4 , 3,3 Q) exc eption hole s 18- 25 - ;!. 3,7:;- 1,o,g7,S -tf!/16.S0 Xt.Xl-X ~X.xIXfX,~X.X X,Xi:'{ Xi-X 10-17 2 I x."rx ;.:,v tl.O '"0 NOTES: H Y bolt bolt cin:::le dia- diameter , · I FIGU()3 , , I I 1 JT = angle is given for bolt circle hole s to be straddled about cente r li!1.e tota.l nUITlbe r of exc eption holes o -------- Q ~---- ~~ -- 0 " LISTING AND CHECKOUT OF INPUT DATA FOR AMERICAN NC DRILL ======================================================= 1 7057.30 l 0.0 2 DEC 8 21 67 3 40.0000 40.0000 23.7500 39 0 0 0 0 0 0 0 0 0 0 0 1.0825 24.3150 -24.3750 40 0 0 0 0 0 0 0 0 0 0 0 2 2.1650 -23.7500 23.7500 39 0 0 0 0 0 0 0 0 0 0 0 2 6.4950 -23.7500 23.7500 38 0 0 0 0 0 0 0 U 0 0 0 SPACE BETWEEN THIS ROW AND PREVIOUS - COMPUTED COMPUTED PITCH # 1.2838 GIVEN PITCH # 1.2500 68 0.875 51.2500 0 4.3300 GIVEN # 1.0825 DETAIL CARD NO ••• SPACE BETWEEN THIS ROW ANn PREVIOUS - COMPUTED #-2.1650 GIVEN # 1.0825 2 5.4125 24.3750 -24.3750 40 0 0 0 0 0 0 0 0 0 0 0 2 "J.2475 24.3750 -24.3750 41 0 0 0 0 0 0 0 0 0 0 0 GIVEN # 1.0825 GIVEN "# 1.0825 2 4.3300 -23.1500 5 DETAIL CARD NO ••• 7 DETAIL CARD NO •• 7 2 7.5175 23.1250 DETAIL CARD NO ••• CIJ -..... 2 1 1.2500 -23.7500 DETAIL CARD NO ••• 4 DETAIL CARD NO •• 4 '-' 35 1275 57.8750 a 23.1500 39 0 0 0 0 0 0 0 0 0 0 0 SPACE BETWEEN THIS ROW AND PREVIOUS - COM?UTED #-2.1650 COMPUT~~ PITCH # 1.2188 GIVEN PITCH # 1.2500 -23.1250 38 0 0 0 0 0 0 0 0 0 0 0 SPACE BETWEEN THIS ROW AND PREVIOUS - COMPUTED 2 8.6600 -22.5000 22.5000 37 0 0 u 0 () 0 0 0 0 0 0 2 9.7425 21.8750 -21.8750 36 0 0 0 0 0 0 0 0 0 0 0 2 10.8250 -21.250e 21.2500 35 0 0 0 0 0 0 0 0 0 0 a 2 11.9075 20.6250 -20.6250 34 0 0 0 0 0 0 0 0 0 0 0 2 12.9900 -20.0000 20.0000 33 0 0 0 0 0 a 0 0 0 a 0 14.0725 19.3750 NUMBER OF OETAILCARDS -19.3150 32 0 0 0 0 0 0 0 0 0 0 0 2 NUMBER OF HOLES # ACTUAL# ACTUAl# 1170 38 GIVEN# GIVEN# 1215 35 # 4.3300 0 o 1 ------~---------------_ _ _ _ _.,I"I., i' ________~J~O~B~N~O~.~.~.~~1~O~5~1~.~30~__~S~P~E~C~I~F~IE~O~R~Y~.~.~.~O~E~C____~D~A~T~E~.~.~.~*~*~*~*~**~lL9~6~1~____~ ICUOE ••• 3 I RECO PROCESSOR FOR AMERICAN NC DRILLING MACHINE TUBESHF.ET HULES COORDINATE DATA TIJAESHEET SIZE TOTAL NUMBER OF TUBES _ _ _ _ _ _ _ _--:.-TO=...TAL NtJMHER OF RO~/S NtH-1 BE R 0 F PAS SE S PITCH - TRIANGULAR 57.875 1270 38 2 1.250 EQUALLY SPACED BOLT CIRCLE HOLES COORDINATE DATA BOLT CIRCLE DIAMETER 56.2500 NUMBER OF EOUALLY SPACED HOLES 68 NOMINAL HOLE SIZE 1.0000 ZERO ANGLE CLOCKWISE FROM VERTICAL DEGREES 2 MINUTES 38 SECONDS 49 REFERENCE POINT N 1000 N 1001 N 1002 G 80 G 81 G 81 X-COORDINATE V-COORDINATE X 000.000 40.000 X 40.000 40.000 Y 000.000 Y 16.250 Y 17.500 M R R 0 1 1 ~ ~gg~!~--~~~:~~----------------~~~~~~~:~6~~~g--~~~~~~--------~-----~N 1005 N 1006 N 1001 N 1008 N 1009 N 1010 N 1011 N 1012 G G G G G G G G 81 81 81 81 81 81 81 81 Y 21.250 R 1 Y 22.500 M 1 Y 23.750 M 1 Y 25.000 R 1 Y 26.250 R 1 Y 27.500 R 1 V 2R.750 R 1 Y 30.000 R 1 N 101~3~__~G~8~1________________Y~~3~1~.~2~5~0__~R~~1~___________________ N 1014 G 81 Y 32.500 R 1 N 1015 G 81 Y 33.750 R 1 N 1016 G A1 V 35.000 R 1 N 1011 G 81 Y 36.250 M 1 N 1018 G 81 Y 37.500 R 1 N 1019 G 81 V 3A.150 R 1 N 102~O~--~G~8~1--------------~Y~~4~O~.O~O~O~--~R~~1--------------~---- _ _ _ _......_...pN,;..,..;1021 G 81 - ... G Ml V 41.250 R 1 N Ib~l~2~--¥G---8~1--------------~Y~~4~2-.~50~O~--~R--~1--------------------N 1023 G 81 V 43.150 R 1 ----..:..:.-..:...::...:.:..::.--:=--::...=...---------..;..-..:..=...::;..;..::.,.';.--~-;::.---------- N 103h V 60.000 R 1 __ __ ____ ________~N~I~~~1____~G~8~1~__~__________~Y__~6~1.uZw5~Q~ ~R ~l ~__~__________ N 103A G 81 Y 62.500 R 1 ________~__~N~LQ3~9~__¥G~R~1~______~~----~y--K63~.7w'~Q~.__~8~Al__________~________ N 1040 G·81 X 41.G82 Y 64.315 R 1 ~ ~tM~_ _ _ _ _ _~N~10~4~1~~G~'~t~·~.d-t~--~--~X~6~3~.~t~2'~~R~~1~--__--~~__~i N 1041 G 'II Y 61.875 R 1 ~ N 104:4 C81 V 60.625 R. 1 rtCuRE S i OR. JOHN MAN'OTES COMPUTER TECHNOLOGY DEPT. PUROUE UNlVERS'rv CALUMET CAMPUS HAMMOND, IN 46323 YGS STOP 3- SPII'I.PL£ f2..EAj) ALL :J)GTAIL &t£P-s i:- COIY'IPUTE. N liTES Row COOf2j)I01= E~GH S E ~I!.£e:, ATE. 01=' /loLeS C1JM PC! Tt: NO J)12.i LL t;:...P I CJ a> Pol2 WINS CCJMPlI/G. CoCilI (:of!. .BoLT CIi!.cL<=' HoLes FIGURE 6 eY SPzAlj)LE PC/Nell C/t-12.J).5 ~R.. '1't'3£5 Hee7 ~Il , f\A S F S SIn f\' RE R T• 3 • 4 SPEAKERS R • f). R R F f\\ 1\' AN, J R tv1 seT F~' T J FIe C E'" T ERn f\I CHF MI CAL f NG I '" F F R I f\! G APPLI(ATIONS nF CSMP '0 "{ ", DR. JOHN MANrOTES COMPUTER TECHNOLOGY OEPt PUROUE UNIVERSITY CALUMET CAMPUS HAMMOND. IN 46323 Petro-Chemical Engineering Project Subject: CHEMICAL ENGINEERING APPLICATIONS OF CSMP R. D. Brennan IBM Scientific Center 2670 Hanove r Street Palo Alto, California 94304 (415) 327-2300 T.3.4 • .' .~ '\ 3 p.m. Sept. 7, 1 967 . kY ,(!HEMH!'At ENGINEERING APPLICATIONS OF CSMP The 1130 Continuous System Modeling Program, an adaptation of PACTOLUS, is a new digital-analog simulator specially developed for online experimentation by the design engineer. 1130 CSMP, in combination with the computing power of the IBM 1130, has demonstrated itself to be an effective and economical tool for simulation studies across the breadth of engineering practice and the physica I and biological sciences. It provides a library of 25 standard elements plus five "special" elements that the user himself may define. Interaction with the program is simple and conven ient via the console keyboard and the console entry switches. From the keyboard, or via punched cards, the user enters 1130 CSMP language statements defining the configuration and associated parameters. During entry, automatica Ily typed instructions and diagnostics guide the user through the procedures. These tell him how to initiate data entry, how to select the variables for printer and plotter output, and how to specify the integration interval, total run time, and output intervals. He may interrupt a simulation run at will to modify or extend the simulation, and need not follow a rigid schedule. The Continuous System S imu lator Approach The S/360 Continuous System Modeling Program offers the best available illustration of what can now be done in continuous system simulation. This IBM program is an 'advanced version of DSL/90, the most powerful of previous efforts of this kind. S/360 CSMP incorporates a number of novel features: it can, for example, incorporate procedural coding within the definition of a macro element; it can conveniently calculate initial and terminal conditions (thus placing the entire simulation under programmed control). These new features provide the engineer a significantly more powerful and sophisticated tool for simulation. Working with a basic set of functiona I elements for model ing the components of continuous systems, the S/360 CSMP user specifies the interconnection of these functional elements by the (FORTRAN) equivalent of common mathematical notation for functional dependencies, namely, Y = F(X). S/360 CSMP thus represents a rapprochement between analog block modeling and conventional digital programming. In addition to the block modeling capability shared with digital-analog simulators, this kind of program provides the power and convenience of algebraic and logical statements. Its FORTRAN-like language can be used as either a parallel (non-procedural) or as a procedural programming language. Irr' t,\l./ The relative advantages of these two programs were compared within the context of a chemical engineering example; this example was previously described in connection with PACTOLUS in the March 1966 issue of Instruments and Control Systems. (An expanded version of this simulation study is expected to appear in a -(."."'"..... ,) ... -)11 o future issue of Genie Chemique.) Several other interesting applications in chemical engineering are described in the Proceedings of the IBM Scientific Computing Symposium on Digital Simulation -~rC~-!_~!.ir~~o~~ Sy~tems, IBM Form No. 32-0-1943. Both programs are avai lable from I BM as Type II supported appl ication programs. The Application Descr iption Manuals for 1130 CSMP and 360 CSMP are available under Form No. H20-0209-1 and H20-0240-1 respectively. SESSION NUMBER T.3.4 SPEAKERS CUSTOMER - I.B.M. RELATIONSHIP ROBERT LUKEMAN, SALES SECTION R.C. METEER, SYSTEMS ENGINEERING" G.P. MONJEAU, FIELD ENGINEERING o hesanted b7 J. R. Luke.man IBM Corporation COMMON MEETING September 6 - 9, 1967 112 kat Post Road lIl1t. PlaiDs, I. Y. 10601 (Panel Discussion o~ Customer - IBM Relationship with respect to FE, SE, and Sales - Sales Section) With the rapid changes we have been experiencing over the past decade ~e data processing industry with regard to hardware, programming systems and applications, it is quite natural that there likewise be a corresponding change in the role of the IBM account representative. This change has not been an attempt to alter the primary responsibility of the account representative, which has always been and will continue to be ff service to the customer", but one of implementation of that responsibility. in () The complexities of the industry today have brought about a need for a type of salesman who is not only knowledgeable in all aspects of data processing, but one who acts as an interface between the customer and the IBM Company. No one individual is able to be an expert in all facets of data processing and still possess the ability to comprehend every conceivable application area the customer may have in his business. For this reason there is a trend to cover our larger accounts with a self sufficient team made up of experienced employees with both marketing and systems engine.ering backgrounds. Their job is twofold. One, (Slide 1) they must represent all of the service, experience and technical expertise of the IBM Company to you the customer, and two, (Slide 2), they must represent you, the customer, to IBM. (Slide 3) - In carrying out this tw"ofold responSibility, a thorough knowledge of both organizations is a necessity. .M far as your business goes, the IBM account representative must have detailed lmowledge of the applications you presently are running as well as those that are in the development stage. This includes not only the volume figures, input sources and output requirements, but the interrelationship of these applications as well. In addition, he must know your organization, where the data processing function. :fits into the corporate structure and what the evolution of this organization has been. Another important aspect the account representative must be keenly aware of, and one that our company is putting a great deal of emphasis on, is knowledge of the particular industry, whether it be finance, education, insurance, manufacturing, and so on. Knowlege of not only what is occuring in the industry today, but what are the trends of the industry. Finally, it is imperative that the account representative have a good working·relationshipwith the top executive management of his customer so he knows what the long range qoals of the business are and can make long range recommendations regarding data processing. As you are all aware, the implementation of a data processing function, if done correctly, takes many weeks and months of planning, testing, installing and converting. If this time spent is not consistent with the long range objectives of the business it can be disastrous to all concerned. To sum it up, the account representative must work hand in hand with every level of management (Slide 4) aspect of your business and become as knowledgeable as you yourselves are. Once this knowledge is gained, and it is a continuing process to say the least, the account representative must couple it with the knowledge, experience and education he has received from the IBM Company. This knowledge covers the full spectrum of IBM (Slide 5) products, services and resources as well as our company policies and businej3§ practices. It is the responsibility of the team manager to be sure that he has developed the required talents within the team itself and to be cognizant of these resources so .he may utilize them as the situation dictates. These include such services as industry specialists, product speCialists, application speCialists, operating system and programming specialists and many more who are available from district, region and division headquarters to assist the local people in fulfilling their primary role that of services to you the customer. The account representative must have in-depth knowledge of the products capabilities, relationship to other hardware, characteristics, potential and most importantly the application value to solve a particular problem or set of problems. Other information that the account representative must be intimately familiar with in order to be of maximum service to the customer is, of course, our own internal policies and business practices so as to be in a position to advise and counsel in regard to contracts, deliveries, prices and stay withing the general business rules that we must follow. The account representatives can work hand in hand with you in such matters as (Slide 6) providing professional guidance and advice on organization, both within the data processing group and the relationship of data processing with the other departments of the business. Advice on budgetary matters very often can be offered by the account representative in light of what other firms are doing and trends within the industry group. Personnel matters is another area where the experience of the account representative can be used to offer suggestions on position descriptions, salary ranges, apptitudes, and labor markets. This advice can materially assist you in your day to day operations as well as long range planning. Planning sophisticated applications such as Management Information Systems or Total Integrated Systems, Educational programs, Teleprocessing systems and the long range data processing plan, can all be facilitated within the assistance of the account representative. c ~, Jr I o The things I've been mentioning all have been areas where you, as customers, can benefit the most in developing a working relationship with your IBM account representative. In doing so, the IBM representative is fulfilling one of his primary responsibilities, and that is to make sure that every account in his territory is a satisfied customer. A mutual respect for the other person's activities must exist between the customer's personnel and the account representative. This mutual respect refers to the relationship the account representative must have for the supporting services available to him from the IBM Company, as well. In acting as the interface between the customer and the IBM Company, he must properly utilize these services in the best interest of both. The group that he usually works closest with, of course, are the Systems Engineers. We are fortunate to have with us today an SE who's qualifications make him one of the finest examples of service excellence in the IBM Company. I'd like to turn the conference over to Russ Meteer. c o ",(4"'." COMMON MEETING - Cincinnati, September 6 - 8 Operations Committee Customer - IBM Relationship with Respect to FE, SE, and Sales - (SE Section) R. C. (Russ) Meteer IBM Corporation 112 East Post Road White Plains, New York C' 10601 Area Code 914, WH9-1900 Extension 6153 Thursday, September 7, 1967 3: 30 p. m. Session VIn 3 pages of text o o COMMON Meeting September 6- 8, 1967 (Panel Discussion on Customer-IBM Relationship with Respect to FE, SE, and Sales-SE Section) As the complexities of the Data Processing industry have increased over the years, it has become unrealistic to expect anyone person to provide all of the knowledge and talents necessary to meet the varying needs of a computer installation. I am sure if you, as a group, look at your own operations, ~lOU will find Data Processing being used for engineering and scientific computation, accounting and record keeping, and management guidance and control. Each of these areas poses unique requirements. The Systems Engineer brings specific ta lents and sources of information to bear on these varied problems. Generally, Systems Engineering will be most active during the installation planning phase. The installation of a Data Processing syste'Tl consists of six major elements: (Slide 1) design, program.nl.iJ.lg, testing and debugging, documentation, conversion, and implementation. c.,' ,/ The most important factor which affects each of these six elernents is your in-house capability to accomplish thenl. Education. is, and has been for many years, one of the iTIl.portant initial pha ses of your experience with IBM, and is the beginning of the developrnent of this in-house capability. The transition from forTIl.al classroom training to the practical application of your newly gained knowledge to systeTIl.s design, programming, and productive use of the system is one of the key elements in the relationship between the SysteTIl.s Engineer and you as a customer. The SysteTIl.s Engineer brings to you the technical guidance necessary to TIl.ake this transition. The services provided to you by the Systems Engineer will vary to a great degree depending on the use you are making of your system. The comTIl.on eleTIl.ent in any case is the iTIl.portance of TIl.aking the transition from theory to practice. You might ask why IBM is so concerned with custOTIl.er self- sufficiency. Only you can TIl.ake the TIl.ost effective use of the system in your organization. Many studies over the last few years have shown that the key to a successful computer installation is user participation and TIl.anageTIl.ent attention. 0' Let's discuss the ways in which Systems Engineers will help you develop your data processing skills during the installation planning. Design is essentially defining what is to be done. If your applications are engineering oriented, this probably involves formulation and the trans lation of -zthe forrnulas to FORTRAN. If your jobs are rnore accounting-oriented, then design of the systerns flow and a definition of terrns is involved. In either case, you as the user know best what your problerns are, and what results are desired. The Systerns Engineer can often assist you by showing you tried and proven approaches to obtain a solution. In addition, he can discuss your own ideas with you and help you to evaluate their effectiveness in achieving the desired result. Prograrnrning is one thing which you learned in sorne detail in your education prograrn. There is a difference, however, between classroorn case studies and actual prograrns. Here the Systerns Engineer provides guidance and helps you in the use of various prograrnrning techniques until you have developed a proficiency of your own which -allows you to work independently. Testing and debugging usually provides the first opportunity that a custorner has to operate the systern. Those first unsure moments at the console change very rapidly to an "old friend" relationship with the proper guidance and counsel provided during the early testing phases. Probably the most neglected and overlooked phase of installation planning is that of docurnentation. And yet, for a smoothly operating installation, docurnentation is ~ssential. The plan in a programmer's mind is not a suitable substitute for readily available docurnentation. Providing that you, the customer, have rna de normal progress in developing a programrning and testing proficiency, docurnentation can proceed without a grea t deal of SE invol vernent. I would sa y tha t the rna in contribution in this area is one of constant nagging to be sure that the job is actually accornplished. We hum.ans seem. to have an aversion to writing things down. Conversion is largely a clerical function, but it requires close coordination and rnonitoring to insure that all the records of your cornpany are correctly transcribed into the form.at intended for processing by the programs which have been developed. And finally, irnplernenta tion. As the saying goes, "the proof of the pudding is in the eating." I arn sure that all of you have had a few sleepless nights during that period when you were irnplementing the programs on the systern and m.aking thern work with real live data. At this time, the System.s Engineer will be close at hand, but, hopefully, he will have been able to help you develop to the point where you are able to do rnuch of the inlplementation yourself and the crises of irnplenlentation are nlininlized. There is one thing I would like to nla:ke quite clear and that is tha t the SE is not always all-knowing. - - ----- He sOnletirnes runs down blind alleys and -------------- o - 3 - o finds problems which he cannot solve. However, he has available to him a number of sources of information which can help him to help you. (Slide 2) In each district, a Field Systems Center is available to him a s a sour ce of te chni cal information and! guidance. The Field Systems Center encompasses the Education Center, Test and Datacenter, and a Systems Design and Installation Center, better known as SD&I. It is this last group, SD&I, which provides the necessary technical expertise to assist the Systems Engineer in questions on programming languages, operating systems and application-oriented programs, such as simulation, netword design, etc. (Slide 3) The Field Systems Center in turn can go to one of our programming centers, either in Poughkeepsie, or Endicott in order to research problems and questions for which there are no answers at a district level. The programming centers have direct contact with the implementors and development groups to resolve any questions which the programming centers cannot answer. Another source of Systems Engineering assistance, which is available in many of the metropolitan locations, is the Installation Center. The Installation Center concept is one in which the Systems Engineering installation planning assistance is centralized in order to concentrate the various resources of information together in one location so that they might bear directly on the customer IS problem. In the Installation Center the customer may do his programming and testing in a machine environment having constant guidance available from one of the Installation Center personnel. C:urrently these centers support the 1130, S/360 Model 20, and punched card equipment. Experience shows that the Installation Centers accelerate the installation planning cycle and the customer I s learning process. In the past, the Systems Engineer also has been heavily involved in the maintenance of Type I programs after installation. This function has now been assumed by the Customer Engineer and will be discussed by Mr. Monjeau from the Field Engineering Division. We see then the role of the Systems Engineer as one of guidance, information and counsel with the ultimate objective of developing customer capability. Self-sufficiency on your part will provide you with the means to realize the greatest return on your Data Processing dollar. -.%4 ij a.; ,t,,",;: ".lATZ, ,( P4fli/lUiA«UA.£Aj4AAAM1;;AOMMM14itJlW=_ _ Abstract of Presentation to be Made by G. P. Monjeau, Field Engineering Division Subject: FE - Customer Relationship Enclosed are copies of the Vl1 - graph foile which will be shown with the presentation. The presentation will open with a recap of the Customer Engineer and a brief rundown on what he does. Next is a description of the technical back-up for the CE for both hardware and software followed by aids to the CEo Following this is the discus sion of the customer - CE relationship, what is required and what can be gained. The subject of APAR's will next be discussed, touching on the function of the CE and SDD's roll in APAR processing. The last item to be covered is' problem determination. Essentially, this covers who the customer sees when, he has a problem. o ---------~---------- ------------------------------- I 0 FIELD ENGINEERING DIVISION (CUSTOMER ENG INEERS) o WHAT DOES THE CE DO? 1. Physical Planning · Environment · Space 2. Installs · Teams · Shakedown 3. Production ( , " · PM · ECls · Unscheduled Interruptions · Program Support o CE Technical Support o I SDD - SMD I Field Engine.ering Techn ical Operations Area Technical Sup>port Staff Designated Specialists in Various Branch Offices Branch Office F. E. Special ists o AIDS TO CE Education Docu mentation Hands on Seminars CAl Self-Study Classroom (formal) Microfiche Retain Tools Diagnostic Programs Test Equ ipment o ~?O o CUSTOMER - CE RELATIONSHIP o :;. '71 CE MUST KN OW OPERATI ON KNOW WORKLOAD KNOW CUSTOMER o HOW CAN YOU HELP THE CE DO HIS JOB? 1. P. S. A. L 2. Trouble Log 3. P. M. 4. E. Co c o 273 APAR 0 A - Authorized P - Program A - Analys is R - Report CE 1. Identifies 2. Subm its 3. Bypasses - if possible 4.- Appl ies SOD suppl ied temporary fixes (PTF's) S00 1. Responds 2. Creates permanent fixes 3. Creates tempora ry fixes wh en requ ired 4. Lends on-s ite assistance when requ ired C" o TYPE I PROGRAMS INTERNAL EXTERNAL I, I Probl em Determ ination What is it? Problem Known Hardware Type I Program Internal Contact CE Type I External Other IBM Supplied Programs User Program contact SE t, Unit Record Control Panel Problem Unknown SE is there SE and CE are there CE is there Neither SE or CE is there Contact SE Contact CE (0 ~ SUPPORT R£SOURCES A'IAIl..ABl,E" To youR CuSTOMER ~N~J~EER. o. PSM'$ .... F,ELt) 4'"-------1 SDD E N(;' NeE. t flRfS. ce.~ re:R.5 5UPPoRT' CooRD,tll\T'oR O.STRI6uTiON t-----PRO,-RAM SuPPOR'r ~~ouP ?r f?EQusr PTF'$ ).'" ,",0 \J F( Fe.. 1=\ ss.tsm.....d: SERi.CE o ~77 I~ I o SESSION NUMBER T.3.6 SPEAKERS MR. G. WOLF, IBM EDUCATION DEVELOPMENT, SAN JOSE, CALIF. MR. H. CADOW, IBM EDUCATION DEVELOPMENT, POUGHKEEPSIE, N.Y. DISCUSSION THE IBM EDUCATION EFFORT FOR THE 1130, 1800, AND 360 SYSTEMS INCLUDING PROGRAMMED INSTRUCTION MANUALS, EDUCATION CENTER COURSES AND THE CUSTOMER EXECUTIVE PROGRAM. ATTENDANCE 39 -j I I ~ 78 o Presentation on 360 Operator Training by Har17' Cadow o (1) The purpose of this presentation is to describe the education program for operations. In the context of this presentation, operations includes all those non-management people whose responsibility it is to keep the wait time of the 360 to a minimum. o This includes the traditional button pusher through the lead operator or section chief. (3) Before getting into the discussion proper, let me state what the operations education program does not solve, but what the user must certainly consider. These are the areas of Job Titles, salary ranges, career paths, and personnel selection. Job titles as a consideration has always been a frustrating topic in data processing. As you'll see in a few moments we've overcome the frustration by literally ignoring it. Salary ranges is also a topic that generates lively discussion - "what should you pay an operator?" is a tough question to answer because it is entwined with the problem of job titles - just what is an operator? Complicating the matter even further is the problem of career paths for operations personnel. Some installations have regarded the position of operator as a training ground for becoming a programmer if the operator is "any good". It is somewhat difficult in these installations to determine what ha,ppens to an operator if he doesn't make it to programming. One SHARE member said that operators who don't ~ make to programming in his shop leave to go to another company for a f\ considerable raise in pay. A few installations have made considerable effort to develop career paths within operations. One company has a series of five positions, anyone of which an employee in computer operations can aspire to. The promotion from one level to another is I. (~ based upon several measurable items. 1) Classes attended and marks received, 2) Length of time in the position, and 3) Management evaluation. o The last consideration concerns personnel selection o "How does one go about choosing an applicant for a pOSition in data processing operations?" At present there are a number of tests under development for assisting an operation's manager to help choose a potentially successful operator. Now back to why job titles are more or less ignored. The main reason is that as a guide line for IBM in developing operations courses, very few users could agree on the description of "operator". Hence, we could not use "job title" description as an aid in developing courses and texts. (This problem existed not only with the job title of operator, but also with such other data proceSSing areas as programming and systems analysis. ) Therefore, in the area of operations, we listed the tasks that must be C., ,) performed. , (2) Here we see five operation tasks. The first one concerns dellce handling. This includes such activities as obtaining and returning tape reels and disk packs to the data bank or library, mounting and dismounting tapes and disks, putting the correct cards in card readers and punches, and putting paper and proper carriage control tape into the printer. The second task has to do with responding to operational messages printed on the console typewriter and entering commands to the supervisor program via the console typewriter. When I say "entering commands" I do not envision the console operator deciding on the spur of the moment what • command to issue. Rather, I see the console operator referring to a II well documente d run sheet with a list of all the commands he may make and the I I conditions under which he may make them. The third task has to do with system updates. This includes activities from the o addition or replacement of modules to systems libraries, to a complete system generation. The fourth task has to do with a very complex operation, thatGf identifying the cause of a problem. Identifying the cause of a problem can mean doing a complete diagnosis, recommending and effecting the fix, or, it can mean calling either the systems programmer, IBM SE or IDM CEo The task of • system restart is also an operation of varying implecation. It could simply mean re-IPL-ing and putting the job control cards of the errant job at the beginning ot the input stream, or it could mean first running a series of utility programs to restore the system to a checkpoint condition and then re-IPL-ing. Running the utility programs is not t<:»difficult - it is choosing the appropriate ones and preparing the proper control cards that requires systems know-how. (2a) These five tasks lend themselves to categorization as to personnel requirement - production people or analytical people. It's not that the production people aren't analytically minded or that the analytical people don't produce - it's more that the production people work from a recipe and aren't required to make spur of the moment decisions, and that the analytical personnel must deal with unusual and unpredicted events. j i -1 3. c (2b) The people requirements of production and analytical lend themselves very nicely to functions of what has been called System Operation and o Operation Control. The tasks of device handling, responding to messages and issuing commands, and updating the system come under the function of System Operation. The tasks of system restart and identifying the causes of problems are the function of personnel in operation control. Also, operation control is partially responsible for system update, viz., laying out the systems residence pack and selecting the modules for a system generation. Now let's see what IBM has in the way of educational materials and courses to assist you. (17) First of all, IBM has released within the past 4 weeks, four System Operation Student Texts to be used for self study. The student text packages consist of a text, a book of illustrations, and a hands-on exercise. There is one student text for DOS using the System/360 Model 40, one for DOS with the Model 30, one for TOS with the Model 30, and one for any 360 model greater than a 30 for as. Each of the four student texts assumes some basic knowledge. This basic knowledge is primarily concerned with some very simple data processing concepts. One of the ways the aspiring systems operation student could have acquired these concepts is by having worked in, or been close to, a 360 data processing installation. Some of basic • concepts and knowledge are: 1. The relationship between input/processing/output 2. Hexadecimal numbering system 3. Decimal to Hex (and vica versa) conversion 4. Function and description cf I/O devices and media 5. Purpose and function of Channels 6. Relationship between compiler, source program, and object o program 7. (18) Importance of documenting the jobs to be run What if the systems operation trainee doesn't have these concepts and knowledge in his repertOire? The answer is, "He enrolls in the programmed instruction course Computing Systems Fundamentals or CSF for short. " CSF is a major revision of the PI course called BCS which was released for use in 1964. CSF is concerned only with system/3'60 topics whereas BCS addressed tp.e entire IBM computer line manufactured in the early nineteen sixties. BCS you may recall, required somewhere between 30 and 40 hours for the student to finish. On the other hand the entire CSF course requires i5- 20 hours. (19) Whereas the entire CSF course consists of six units, the required prerequisites for a systems operation trainee are Units I, IV, V, and VI. Unit I provides the student with a basic knowledge of problem solution, numbering systems, and conversion, computing devices, and 110 media. Flowcharts, decision tables, programming principles, and programming languages are discussed in an introductory manner. C,: ;' Unit IV discusses the process of creating a program from previously prepared decision tables and flowcharts. Short sample problems are used to show the development of programs in COBOL, FORTRAN, RPG, and PL/I. Also presented is a brief introouction to program compilation. Unit V discusses how the computing system (CPU, storage, I/O devices) solves a data processing problem. Information is traced through input devices, proc,'essing it, and finally as it emerges from output units. Numbering systems, I/O devices, storage devices, and processing units are illustrated and discussed. Unit VI is devoted to the procedures for collecting and packaging the documentation created during the programming and testing of a data processing problem, and the documentation required for operations. The amount of time required for a student to finish these four units varies C' (10) from six to 14 hours. You've probably been wondering about Units II and III: Unit II concerns "D efining a Problem" and Unit III is about Analyzing a problem. Although these two units are primarily targeted for a programmer or systems analyst trainee and not absolutely essential for a systems operation student, we recommend that if time permits, the student take these two units. elaborate a little, Unit II concerns problem definiti. on in detail. To The student is shown methods for determining input and output data requirements as well as the calculations required to solve his data processing problem. Sample I/O documents are discussed throughout the text. Unit III is about the use of decision tables and flowcharts. Sample problems are analyzed by means of decision tables and are flowcharted using the standard flowcharting symbolS. We in IBM Education appreciate your concern with conservation of time. That is why Units II and ITI are not mandatory - - - but we do strongly recommend them. If the systems operation student does take these two units, he will have a better understanding of the steps involved in producing those computer programs for which he'11 be responsible in his role as an operator. (21) Now let's take a look at the systems operation student texts. The three texts for the Models 30 and 40 DOS and Model 30 TOS are identical in organization. Section 1 is an introduction to the System/360 computer. It can be classified as a review of CSF. Section 2 describes the role of the operator. It also very appropriately tells what the role of an operator ,:-'f(' -'" !,,,,"__ Jl is not. One other major topic of Section 2 concerns a description of the Programs to be run and the Run Book. Section 3, "Sample Programs" consists of detailed step-by-step procedures for getting the components of a system operational. A description of sample programs on sample run sheets are used to give cohesiveness to the step-by- step procedures. Section IV is devoted to Dos/TOS terminology and how the operator communicates with the supervisor. Included in communications is a discussion on 110 device assignments. Also discussed in Section 4 are numerous messages that the operator may receive and what actions might be taken on these messages. ~~, '-J1 I I I 7, After the student has finished the text, he should perform the appropriate systems exercise. o This exercise will provide directed experience in operating I/O devices, interpreting operator messages, and issuing commands. (22) The exercise requires from 1/2 hour to 1 hour. For Systems Operation Model 40 OS, the organization of the text is somewhat different. Section I is an introduction to the operating system - specifically, the function of the job scheduler. When the student has finished this section he is able to define such terms as Reader/Interpreter, Initiator/TerJ?1inator, data sets, Volume Table of Contents, DASDI, Job \ Control Cards, data set disposition, and, IPL. Section II which is entitled hardware familiarization is basically the same as "Sample Programs" for DOS. Section III "System Exercise" describes the OS Inessage format, lists the publications "Messages and Completion Codes" and "OS ""1\ '-.Y) Operator's Guide" and how they are to be used, and, a description of the exercise. One half to one hour of time is required for the student to run the exercise. (23) Now let's turn our attention to the courses recommended for the personnel who perform the operation control tasks. The initial course the student takes may be one or more of three: 0,·,', I, 1. CS F (which has already been described) 2. S/360 Introduction 3. Fundamentals of Programming Languages S/360 Introduction is a 5 day class in the education center. The maj or objective is to have the student able to describe the functional characteristics and general principles of operation of the S/360. Fundamentals of Programming Languages is also a 5 day course and is for o people with no data processing experience. It is primarily a CSF review and a description of the various programming languages with analyses of programs written in the different languages. f If the installation is to transmit and receive data via terminals and common carrier transmission facilities, it is recommended that the operation control student attend the 1 day Data Communications Concepts course. hoc..l Here he will find out"data communications can effect the operation of the data processing installation. The Problem Oriented languages are COBOL, PL/I, FORTRAN, and RPG. Some of ~ese courses are currently available in both classroom form and PI form, viz. FORTRAN and COBOL. In general, RPG is available only c in PI form. Although PL/I is currently being taught in education' centers only, it will be available in PI form within the next 6 months or so. The Assembler language coding course is also available in either form. For those students who study ALP in PI form, there is a 3 day hands-on wrap up class available at the education center. The facilities class teaches the student how the operating system functions and what facilities, in the form of pre-programmed routines, are available. This includes the selection and use of utilities and the requirements for using various levels of Access Methods. The DOS/TOS Facilities class lasts for 3 days whereas the OS version is scheduled for 5 days. -.J ! :CI .>-"'jIi T' The System Generation (or Sysgen) course covers the considerations for generating a system when provided with the following items: o 1. Released tapes from PID 2. Sysgen manuals 3. The machine configuration and operating system options or features to be included. The last item is sort of misplaced. It belongs of course just after 8/360 introduction. This is where it will be placed in the futureo c o ID. 2¢¥Q1lM. ti : ." 4iji44iIij $ ,JUUCU4IAlm,: a.ea;n4PM .tutU .... _.................,...,., ...........:..."= ... ,."""""""" ..._ ' ------~~~- .. .. =..........-... - .--...............--.~~~ ii" 1'1 I,~ II o en ~ z 0 0 -~~ ~ p ~===:I U t~-n a= w 0 en c::::::;::a en W ...J ~ . 0 U ~ (f) ; ' I==- CICI:ZII8 ~~ (ITO 0 ~ ~ ~ ~ c§l ~ ©:c: 00 X t~ ~ @-"w:~ rtf) C cmcr~ ©1: W ~ ~ ="'::;;? ~ d/ ,.;::;:::0 >~ Q1 c=B ~ 00 :~-;"".: ~~n~q Be: cg: .~ U c~ <0 "0/ '. ef}) 6d~ ~_.fL~ ~ c' ~90 e o o OS OPERATION ---:::~. TASK REQUIREMENT DEVICE HANDLING PRODUCTION MESSAGES )..). ~ a COMrv1ANDS PRODUCTION SYSTEM UPDATES PRODUC1"-ION Ar·,jALYTICAL IDE~JTIFY Af\J;l\LYTICAL RFSTART SYSTEM AN~.LYTICJ1~L CAUSE OF PROBLEM '- 2 2~ FllNeTION SYSTEM OPERl\TIOr~ OPERATION CON1&ROL. 2b __ L __ SYSTEM OPERATION TRAINING MANUALS TEXT ILLUSTRATIO~~ E){ERCISE - ~~AN DS ON MODEL 40 DOS (light) BLUE COVER RED COVER .. -;,J 0 'DOS . l"/ rr·ODEL /"'I ;\.iU\~ L~.· u ~ MOD~ 30 lOS p/tJY 360 ~v10DEL> 30 (dar~tl BLUE as COVER GOLD COVER 1.7 ~ C1 o - ~~~-- dl o • ~ ~ ~ o I I' [" I ..... r,~,-"'-'::-'-:;;' :::;:~~ ~J 'j c:.:::"",..;:;.) W rl ~ 0 00 0 I"""; if) ~Jt... DC W <: 0 b,.~~ ~~ J 'i. c::c:::- ()=~=- (:? ~? ~ ~ ~-, ..:;-:-:.;.,;:a -dl~ $~ ~ 2'- => 0 to;: '- ~j 0_ -' ~ ~;J --p (!) (!) 0 > ===.J D- en 0:: DC .~ ll~",; ~:~ ~'..i_._ ......~.I' :':"::~~~ ("'';'''') ~ ~ ~ ~ ~ ~ (j";;J l' c---;. Z W r:~ \i~tj n ~.:dJ 0 ce:( ~ U ~ ~? t,r.._J -- ~ 0 Di:) ">:..,~.~",. c::r~ p. f! -=-:Jl . h___ , L~w 'j P:= tl G;:.',~ ~ ~ -, 2 -=-- 0 r~~ ,~u ~ Z -~ ~>. --P 6~ ~=- ~> c:.:-~ => ~.J 0 C r:,--! ,:~~ I: -- ~~u p==- II 6--"" -::::;p ~ :::) o o .~ o ~ COMPUTING SYSTEMS FUNDAMENTpJ=S <:.' .. ",... . ",.·L~_ .-"",,::,:.:o=.=u RECOw1MENDED IF TIME PERMITS U~jIT ~ TI UNIT TII DEFIN~NG A PROBLE0J] p~NALYZING A PROBLE~v~ ~ \'l 20 SYSTEMS OPERATION Gr.;•. ::' MODELS 30 8 40 DOS 8!&&:5!"'L_.fr.:!El!!ll SECTIO~ I ,"""""""',,,."'.·.c:;.C'DIIII_ _ _Bml_ _Gl3_ _ _ _ _ _!&:II_ _ _ _ _ _ _ __ INTR'O TO SYSTEM/360 COMPUTER tl I: ~.,. F:.~.c:?nO})~J ~bV ~ U 1!~J fl.·' e, r t[ ROLE OF THE OPERATOR i: I' (~ r~(G/.i,C""? ': ,;,,:, \ 1.1 U ~) l..:.= ", IO'{J\j I;:,' ~ c;] "i\ V SA~v1 PlE PROGRA~J1,S "-> '" ~ _ 0 (('"$ ~.="~.' C7-" ~j " ~Ll)~ ut::3Y ~ f'~ i ' S\fSTErv~ ll. {.il .~~ DIS~( OPERATI NG SYSTEM E)(ERC!SE 21 ~ \ '\.\~ () r'~ >/ ~ ..L ~ ~ _ .. _~ __ _ o e o SYSTEMS OPERATION ~JJODEL ~ 40 OS SECTION I INTRO TO OPERATING SECTION ]I HARD~4JARE FA~~iLIARIZATIO~J SECTION JJI SYSTEM E){ERCiSE SYSTE~v] 11 .-~------ I--~ --~ --~-- @ -- --ij- 0- c=-j ~n h' Ij ~rj Oll n . ~~ , ::=:::l:) U i. ~r) lOCI n n 11 l.':;;;;';'; :1 H ,"';;1 L.:::._.~.: ... ,; j ,,~~\ ii \..J J C:;? ~, ..2 () L:=a ~ ~ ~ ~ ,-1 1 ti'2 0 <:::3 c:.<~ 0" 9 l_ .. _:...1 r",:z3I 0 (~~ n ~ d c~~ -;':'/, L==- 0 -) 0 ~ 0 ~ ~ rl'<'? ~ t»,. r, vii 0 • ,_;;;;a , '.,,\ \, .. ;1 j ::uJ (.. ".,.. <0 @... '- l!... ~J U ...... cp-'') C\ . ""1 S ES S I 0 1\1 (\1 UMRF. R T. 4 • 1 OPEN ROARD MEETING SPEAKERS JAr"1ES STAf\JSBIJRY, PRFSIDENT C; ," TRANS CRIPTION c OPEN BOARD MEETING COMMON - 7 SEPTEMBER, 1967 The transcription below indicates that we have much to learn about procedures for taped sessions.. I think that the idea is good; it's the only way to get the verbal information at these meetings into the proceedings II Many of the questions from the floor could not be understood (on the tape); comments were generally clear I since most of those used the floqr microphones. When I could understand or remember the gist of the question I I have put it in; in some cases I have reconstructed the question from the reply. In a few places I I have been forced to delete passages; the context was not clear. I In the future I we will have the floor mikes checked before we start, to eliminate the feed back that was present at Cincinnati. The rest is up tQ you. Name I rank I and serial number I please I and use the mikes. The trans cription follows: loO Page 1 CHAIR This is not exactly an Executive Board Meeting I in the sense that we don't vote on business I but we do have the Executive Board up here as targets. We also have some things that we Id like your opinions on. Some feed back from the members - and itls a chance for you to bring up any gripes or complaints I pats on the back or anything else that you think may be appropriate. lid like to say before I start that there is some trouble with the mikes. They must be pushed to talk There is a switch on each one of them. Turn on the switch whenever you have anything to say. Therels a report that I will present tomorrow at the Contributed Program Library Session on the 360 Contributed Program Library. This is a joint COMMON, SHARE GUIDE proposition. The minimum standards that have been distributed by PID do not repre'sent COMMONIS standards. They are minimal standards acceptable to all user groups We Ire free to exceed them in anyway we want to. Just not contradict them. It e" Second item of business that I have - COMMON has been asked to participate in a Contributed Program Library Catalogue sponsored by the Joint User's Group and ACM. The Executive Board is in favor of this. What it means is that the programs in the library of any participating group would be part of a composite catalogue of all User Group Program Libraries I regardless of the manufacturer and machine affiliation. At present the ACM is talking about a subscription price of some $3 to $5 a year for a quarterly catalogue. You don't have to subscribe if COMMON participates - that's up to you. But I would like to know how you feel about our making the COMMON Library Catalogue a part of this composite Contributed Program Library catalogue First I is there anyone who wants any further discussion, explanation of how it works I or anything of that sort? Have you seen anything on it I heard anything about it anything else. Comments from the floor please. It I QUESTION - What would be published? Titles I authors - ANSWER - Titles I authors 1 abstracts - any program entered in that catalogue would be available to anyone regardless of user group affiliation. o Page 2 QUESTION '- How available? ANSWER - On order - the orders would be handled through your User Group, so in practice they are restricting it to members of organized us er groups I but it would be available. There was a stipulation that a reasonable reproduction cost could be charged. The general idea frankly, is that COMMON IS Library, along with those of several other user groups I is winding up in other catalogues, anyway. Such things as COSMIC and some of the others. We feel that we wouldn't be losing anything by making our library entries available. We do feel that we might be gaining something in having the information about the other User Group libraries. This would not affect the COMMON Library catalogues in any sense. The only additional thing that would be required is that someon~ who enters a program under these circumstances would have to fill out two submission blanks. One would go to PID, the other, without the program materials, would go to the Contributed Program Library liaison group committee. We are not promising to retro-fit existing libraries. If you don It want a formal vote on it, we don It need it but I would like to have some opinion as to what you think of the idea. In the back, please and you may pave to use the mike I l QUESTION - How do SHARE and GUIDE feel about this? ANSWER - At the Executive Board level, SHARE and GUIDE are both in favor of this. I don It know if they have had a resolution, a vote on it, because I frankly, we do not have a response from IBM yet as to their willingness to participate. They promised such a response by I hopefully I the first of October. That's the reason I am asking for the feed back at this time. FLOOR I think I could express the opinion of many of us here that this idea could be considered twofold - one I we have a centralized way of obtaining information and, second, with this type of catalogue I and the whole combination of papers being presented in one place we could all have these papers available when we enlarge, letls say, to different systems. Welre a 1620 user now, and have a 360 on order. 11m sure that many of you will express the same opinion. I Page 3 11m throughly in favor of it. I would like to add one comment to that. On the Contributed Program Library I COMMON I S Contributed Program Library I there will be separate catalogues for the 360 1 the 1800 and 1130 I and the 1620. A user will receive the Library catalogue corresponding to his machine type. The 1130 and 1800 catalogues are combined. T The official rule is that the user will receive only his own machine type catalogue I so you normally wouldn It know if you were a 1130 user what was in the 360 library without some such procedure as this. Incidentally I you can get the catalogue for another machine type by convincing your branch office that you need it .. QUESTION - Wouldnlt the submitter have to sign a disclaimer? ANSWER - They do have to sign a disclaimer when they send it in. I mean now. QUESTION - Just from a lega,""point of view - Would the individual whose programs are now in the library have to be consulted on this I before we make any committment? ANSWER - They had to sign a disclaimer when they sent it in. It has always been required. FLOOR The disclaimer gives any third party the right to reproduce the program and give it to anyone they desire. CHAIR AND I might add that IBM does exactly that. Apparently t they are legally obligated to not use the Program Library as a means of sales advantage. As a consequence I any requester can obtain a copy of any program in our library I regardless of whether or not he1s even using an IBM machine. These are the present rules • • Page 4 May I ask for a vote - a show of hands - as to those who would agree that we should participate. Very good. Thank you. There was to be some discussion of our proposed by-laws. How many people have read them enough to comment? They are published in CAST 7 which about half of the people received, and there were additional copies made available here. I ,I PLOORNo time to read them. I know it, but this is the last chance weill have for discussion. Would you like a run-down from Laura as to the general changes we Ire making? IAURA AUSTIN I think generally you III find that there are relatively few changes except for wording. Jill just briefly go through them here, and see if I can pick them out. I wasnlt prepared to do this I and I haven1t a marked copy here. We did change it to include the new machine types. Welve changed the name throughout the py-Iaws from 1620 User's Group to COMMON. Welve included the machine types that have since been made eligible for members hip in COMMON. The purpos e and framework of the organization remains the same as it was. In loss of membership, there has been a change, because we Ire doing away with the regional structure ~ Where we used to have two meetings in each region each year I we voted to cut it down to three meetings a year. So we Ive had to change our requirements for attendance at meetings. If an installation is unrepresented at four consecutive meetings you will be removed from membership. This should give you a period of about 18 months to make a meeting and still maintain your membership. We've added one other stipulation, so that we can keep our mailing list up-to-date. Each year, the Secretary-Treasurer will send out a registration form which registers your correct address I your machine type l and so on. If this is unreturned after two consecutive mailings I (we mail it I and if we don It get any answer, we try again) then you (/0 {(~ I Page 5 will be removed from the rolls. Now I on ~hat mailing I I shouldn It say weill mail again if we don't get any answer. If the m.ailing is unreturned, we will mail again to the installation, without an individual addressee t because the installation maintains the membership, not the individuaL Also, any installation failing to respond to two consecutive mail ballots will be removed from the membership. We Ive provided for abstentions to be counted as voting. If you wish to abstain, donlt just tl1row your ballot in the waste basket. Return it, because you will be counted as having returned a ballot I eve~ though you are abstaining from the voting. On the elective officers, there will no longer be regional Presidents I but they will be Executive Board Members at large. The Executive Vice-President will be elected from the Board by the Board members, but the President I Secretary-Treasurer I and the Board Members will be nominated from and by the membership at large. In the elections I half of the Elective Board will be nominated every odd numbered year or every year half of the Board Members will be elected I so we will not have a complete turn-over at anyone time. That means that we will be having elections every year I instead of just every two years as now. Half of the Board members will be elected every year. The President and Secretary-Treasurer will be elected for a two-year term of office I as will the Board Members. The election for the President and Secretary-Treasurer will only be every other year I but there will be Board Members elected every year. There is some change in the wording on the Teller I so we wonlt have more than one Teller from anyone installation. This was not restridted in the former by-laws. On a q\lorum, welve had a difficult time in the past. You may remember in New Orleans I for instance I where we had to declare the people elected because there wasn It even a .,uorum voting for the people I so we didn't in reality have an election. We are reducing what is required for a quorum. So welve said that, for formal business at a meeting I at least one quarter of the member installations must have voting representation at the meeting to constitute a quorum. Then, for conducting business by mail, at least one-third installations must reply to amke up a quorum l and as I mentioned, abstention shall be counted. We hope it won't be so difficult to get a quorum anymore • Page 6 on our voting. The decisions by committees have remained essentially as before I about proposed standards on meetings - this will remain the same. We have changed the by-laws to state three meetings a year that they will be distributed geographically and temporally. This means essentially we will have a meeting in the East, Mid-West, West, Mid-West, East, Mid-West, W-est, so we will hit the Mid-West twice as often as the others. We felt that this allows the East to get to both theirs and the Mid-West, and the West to get to theirs and the Mid-West.. So this the plan for coming meetings. I I Welve also changed, under distribution of information, that any material, except the membership list, which is distributed through any COMMON channels, is assumed to be non-proprietary. We did feel that the membership list should be considered proprietary to COMMON,. It will not be sent out just on request, because we've had difficulty with people putting COMMON members on mailing lists, so we have restricted its use. Of course, in submitting a program as welvealready mentioned, you submit a disclaimer at the time, which does make it open for any kind of reproduction I II You'll note that incorporated in the new by-laws is the proposal that was submitted last year regarding financing for Executive Board Members who must attend every meeting during the year. There will be some subsidization made by COMMON I if necessary, to have a Board Member in attendance. We have also left it open tnat, if it is felt necessary in the future, we might put in a subscription feed for CAST I if the cost becomes prohibitive under our normal financing situation. As you know I the only way we receive finances for COMMON right now is through the registration at the meetings. We take the cost of the meeting, and then some additional to cover the expenses of COMMON The issues of CAST that we have sent out have run us in the neighborhood of $1200 per issue of CAST. You can see that We are running into considerable expenses in operating COMMON I but we have felt I from the feed back we Ive gotten from the membership, that CAST is well worth this ~ If we are to continue to issue CAST on a regular basis, and to include all the information we have in the past I we are q c Page 7 o going to have to have some means of financing this. So we Ive left it open in the by-laws that if deemed neces sary we might put in a subscription fee. However I this would be submitted to the membership for consideration before it was done. It's not going to be anything that is just railroaded through ~ I think that this basically covers the changes in the by-laws. Do any of the other Board Members think of any I have skipped over? I CHAIR Thank you I I Laura. I would merely like to say one thing. I hope that the members see fit to approve these by-laws I because I don It want to spend the rest of my life running from the sheriff. Obviously r am approving expenses of Executive Board Members to get them to these meetings; 11m not authorized to spend your money this way, but I am dOing so. I C. \' There was some question at Boston about a statement of finances. Chuck had to return to Dallas unexpectedly. Our present treasury is something like $4750. We will make in the neighborhood of $2500 from this meeting. As far as the Executive Board is concerned I we Ive already stipulated that the registration fee for San Francisco will be $25 I and you will get only one luncheon out of it. II', The feeling at Boston was that higher registration feed would be acceptto the membership in preference to dues, and that a subscription fee for CAS T would be acceptable in lieu of dues They did not want clues inlieu of a meeting attendance requirement. As a comparis on, SHARE has considered imposing a subscription fee for SSD; but the suggestion was voted down by the members. Every thing that they get from a registration fee is net - There are no group activities that are scheduled without charge. SCIDS registration is additional, and on a usage basis. SKIDS is, a SHARE organized drinking session. Six 'til two every night during the meeting. res very well patronized. ab~e it In regard to the quorum, we felt that abstentions were legitimate votes for COMMON members. There are many of you new members who I for one reason or another I feel that you aren't qualified to make a decision, but are willing to go along with the majority~ .. Now, we've asked you to deliberately abstain. The vote on the by-law amendment that we proposed earlier was very much in favor - I think something like 80% - but there were not enough votes returned to establish a "} Ot. Page 8 quorum, so it was defeated. Welre trying to get around that, but we didn't go as far as SHARE. In SHARE, if 20 ballots are returned from a mail vote, the majority of the votes' determines whether the thing passes, because every installation has an opportunity to consider a mail ballot. I don't think that's quite legitimate. We didn It go that far. Are there any comments from the floor? QUESTION - How many is 25% of the membership? ANSWER - At the moment our membership is something like 1275. Weare not a quorum here. QUESTION - Is the omission of machine requirements deliberate? ANSWER - It was deliberate. Wetll accept anything from a 20 to a 91. QUESTION - I would like to ask one question. Is there any provision in the by-laws now for bonding of either the SecretaryTreasurer or the Local Events Chairman? I know that Mr. Mauldin is undoubtedly a very honest person. Dave Dunsmore is undoubtedly a very honest person, but to protect them and COMMON I would hope there would be saIne way of providing for a bonding of them ot of anyone who must handle organization funds. I don It think there would be an organization that could operate effectively without some sort of a bonding procedure. ANS\VER - I think you have a good point here on the Local Arrangements Chairman, and I know that Dave himself, raised this question. It does not state in the by-laws, and perhaps should, about the Local Arrangements Chairman, but it does about the Secretary-Treasurer. It says he should be the primary financial officer of the group I and, as such, will be required to be bonded at the expense of COMMON.. I might add that Chuck Mauldin has been requested by the Executive Board to have himself bonded at the expense of COMMON for his own protection. Further comments -. l Page 9 o COMMENT - I think it has been rather the concensus of the people at this meeting that the by-laws as amended are going to be quite acceptable to the membership. I realize that it will take a mail ballot to insure this I but I think we could give you a s how of hands here to indicate our approval CHAIR Well , since the majority of you have not had a chance to read them, or at least so indicated t I don't think it would be too appropriate at this time. IN THE BACK We don It need a show of hands,. What we mean is just five minutes of people's time to take the time to mail the ballot. CHAIR That is exactly right. rve forgotten exactly how many I but something like 250 ballots were returned on that by-law amenpment. As I said, it was about 80% in favor of it, but there were not enough under our existing by-laws to establish a quorum. QUESTION - Can you give some indication as to when the ballot will be mailed and how long they will have to return it. ANSWER - Yes" The amended by-laws I the proposed by-laws, were published in CAST 7. About half of YOU about 40% of you, I think, received them before you came to this meeting. The rest of you should find them when you get back. Under the by-laws there is a required discussion period - under the existing by-laws and under the proposed by-laws. We have to submit it to you, and we have to give you time to send in written discussion, if you wish, prior to requesting a vote. That written discussion and the ballot, together with Executive Board comments I will be published in CAST 8, which is scheduled for sometime around October 1 or October 15. You then have approximately a month to get your ballots back. Comments should come in very promptly, please I and we would appreciate favorable or unfavorable. Wetre most interested in some idea of what you want. I o Page 10 COMMENT - I HAVE read the by-laws. They look good to mel but l from what you said a moment ago, I would suggest consideration of the question of the size of the quorum neces s ary to conduct bus ines sat a meeting. If I in fact I a group of this size is not competent enough to make decisionsblnding upon the whole, I think we have a much too conservative position expressed, and it might be appropriate to lower the quorum when we do have a chance to discuss back and forth, and each one adequately hear the opinion of everyone else. Now I secondly I I take exception to your interpretation of what I believe to be the argument presented at Boston. Ido not believe there was a strong opposition to the payment of dues from this membership if it was rewarded by adequate, efficient administration. o Thirdly I I say that, maybe because of what we said, planning and the conduct of this meeting has been vastly superior I and I say thanks to whoever it was. CHAIR To some extent I can take credit for that. (LAUGHTER) No I this is the reas on for my guilty conscience for subsidizing the attendance of sufficient Executive Board members to establish a quorum of the Executive Board at the planning meetings we had for this.. I don't mean that I can take credit for the work. Work has been Dave Dunsmore and Jim Tunney I Laura Austin, Division Chairman, Managers I Eric Zielinski of IBM. They are the people who must really take credit, but I think the Executive Board contributed a great deal to this, and I would like to have my guilty conscience saf.ved. (Clapping). We do hope and expect a better run meeting at San Francisco than we had here. We are aware of the problem with the late agenda. They were mailed on time. The next ones are going to have to go out first class, which means more money. It is gOing to cost us about $1,000 for a first mailing about the 1st of October, a preliminary agenda about the 1st of November. That's the reason for the deadlines that I mentioned at lunch. c Page 11 o IN THE BACK Do you know hovl many installations we have represented here? How many people we have here? ANSWER - The people are approximately 450. The number of installations, however, is by no means anything like that. There are around 50 attendees from IBM, and I know of several installations that have multiple attendees. I couldn It begin to guess I but somewhere in the neighborhood of 200 or 250 installations. FROM THE BACK Couldn't hear----------------CHAIR I would like to have that in writing, please. To CAST. DICK PRATT rm not sure, maybe somebody can correct me about this if 11m wrong but I believe the only way to get this provision in the proposed bylaws is to defeat them, and then propose a different set of by-laws with this change in it. If this is true I and I think it is, I would like to suggest to you that if this is the only objection you have, and if your other obj ections are simi~arly minor you approve the bylaws as they stand, and then propose these things as amendments, because we absolutely cannot operate legally under the present bylaws. I I I CHAIR Before we even comment on this - under our present by-laws we have to have two-thirds to approve these amended by-laws. If we get that done I then we can conduct business on a reasonable basis. That's one advantage. FROM THE FLOOR - SAM LYNCH I U. S. PRODUCTION CO. - o I agree with Dick I that if this is the only thing that prevents us from getting these by-laws, for crying out loud, letts get these, and then work on them.. But how can we find out right now whether Dick lS assumption is correct? You know, if it is I then I wonlt even bother writing CAST and making the suggestion, and 11m sure the gentlemen back there won It either I but can we find out now what the legality is? Page 12 CHAIR Chuck Mauldin knows I and hels not here. (After I got home. It1s two thirds of the membership in favor I to amend the by-laws) • , In any case I from our existing knowledge I I think we I d better do it. DICK PRATT - The point ls, I don It thlnk tbere ls anyway, either under the existing by-laws or under the proposed by-laws I to amend a proposal to be voted on by mail. You either accept it, or defeat it as it ls stated. I think thaCs correct. CHAIR - I believe that one of the alternatives in mail discussion is to submit an alternative proposal, but then that must be discussed, so it would definitely delay it for two to three to four issues of CAST, which is sometime next Spring. FROM THE FLOOR I don't want to delay this, but, Dick, you imply that the restriction is on the mail ballot. You know I this thing could be changed before it is mailed to us • CHAIR It has already been mailed. FROM THE FLOOR - Not in the form of a ballot - in the form simply of read this, CHAIR This form has been mailed - must be discussed I and then the ballot submitted. FROM THE FLOOR - O. K. In other words I the procedure has started I and we should not abort them I but carry through. I would certainly go along. I withdraw my comment for now. o Page 13 o FROM THE FLOOR - WADE NORTON,. fro.m Southern Service, Birmingham. I would like to ask the question if there is any way in which the proposed by-laws are not as good as the existing by-laws? Whether we have reached an ultimate is not necessarily the question. Whether we have ever reached an ultimate js subject to some question in my mind ISO would it not be better to go ahead and make progres s in increments as we have been doing since we got our first computer. (C lapping of Hands) FROM THE FLOOR I have intermittenly received copies of CAST and various letters from COMMON. If we are going to mail out a mail ballot, let's please make sure that a1l the members receive a copy.. Myself for one would like to receive a copy. CHAIR - c All right, I can speak for Chuck on this. As you know, he has had some trouble with his installation. Hets sti1l having trouble with his installation, but not from lack of support. He informs 'me that he has reduced his back log of mail from yea high, about four feed, to around three inches and that, within roughly two weeks I there wi1l be a membership list complete with addresses I which includes every application that he has. I will not guarantee that there is no incorrect information in there, of course.. There should be no problem with people registering or changing address I and not having it processed within a reasonable length of time. LAURA AUSTIN lid like to say that in the new members I meeting yesterday, some came up and said they had not~received their mail. At that time I Chuck checked the list which he has I which is current as of last Friday, and all but one of the people's names were on there. We hope that things are in m\1ch better shape right now than they were a week ago. CHAIR My reason for giving the two weeks delay was that Chuck also said that he has 75 new memberts names in Dallas I which are going in immediately to Pat Lonergan for the final up-dating on their membership list. ..,,'. ,t' '"nNW ''t ......¥ ' n C!!*''t " ··r:·'M¥I·'trwt/r,·¥!re±t"·r"2'··s··!;r"~M··~·"'"t···"····~····t"'~····'·'·~~·~···~'~· ... ····-···...... "··'ir~~~M"""'·-··--··=····-""""·~~~~............- Page 14 FROM THE FLOOR - I'm just wondering - I had problems here with Chuck, and it is possible when you have something llkea ballot that it could be flagged in some way so that you know it needs immediate attention, or urgent attenti"on, and not be put in w;itheverything else in CAST. (Sorry - everyone talked atonse here) c CHAIR - Well, we assume that you would at least look over the table of contents. We do try to segregate such items, as a matter of fact, generally not the front page, but we III try to make it the back page I normally 11 FROM THE FLOOR - Different colored paper. CHAIR- Different colored paper is a. suggestion~ I don't know whether we can do it or not, but we can certainly consider it. FROM THE FLOOR - If it were just typed in upper case in the table of contents - that would tend to catch someone1s eye. Action is required# CHAIR - Well, I'll get hold of Chuck after I get back to New York I give him a call, and suggest that he can possibly arrange to have an asterisk I or some sort of indication, put beside the item in the table of contents that requires immediate attention and your action. FROM THE FLOOR- If it's official action that is required of a member and this is pointed out -CHAIR - Something of that sort, but I think I will have to insist that you do at least look over the table of contents. It is rarely more than two pages. C\I. I, II Page 15 o FROM THE FLOOR - I am wondering, as a suggestion, would it be possible to get regional responsibility for contacting the members in the local area to find out if contact has been made or just to remind them to mail this in. CHAIR I might say that one of the reasons that we put that failure to respond to two mail ballots in there I is that if you don't pay attention, you aren't going to be a member very long. That won't affect this vote, but if you pass these by-laws that provision will be in there. FLOOR"- In reply to that suggestion, it's my opinion that what we need is responsible individuals who will take action without being led by the hand, and not somebody that you have to constantly follow up a nd follow uP. FLOOR - He might have been referring, tho, to those people who might not have received it because they weren't on an address list. CHAIR I might add in connection with this that quite a few of the local installations, Long Island Lighting for one, did not receive an agenda till very late, because the third class mail service on Long Island is lousy.. Jene Lewis called me, and I find that other members do the same thing; they will tend to call the nearest Board Member, contact like that, if they know that something is coming up_ . You certainly should know because you would have to miss two copies, the one that carried the item being discussed and the one with the ballot. I think that to some extent it is back to a matter of installation responsibili ty . If you don I t get something you should, then find out why. FLOOR - o May I make a suggestion - If you don't get CAST 7 write to Chuck .. This way you will be sure of getting your ballot. When you get back to your installation I if you haven It got CAST 7 I then write a letter to Chuck right away so you can find out what they trouble is and be sure you get your ballot. Page 16 o CHAIR- Which takes care of only the people here. FLOOR That was tried four weeks ago and I still haven't gotten an answer back. I sent a telegram. CHAIR To where? Terre Haute? Or Denton? FLOOR Denton. CHAIR He's not here to defend himself. I don't know the circumstances. FLOOR We have a problem apparently to get this particular ballot approved by a large majority. Would it not be worthwhile to make a special firs t clas s mailing of this ballot only in an effort to get this back? Otherwise~ you are going to have multiple mailings anyway and you are going to wind up with the same cost. It would be roughly five cents apiece if you do it that way I rather than putting it in the next CAST or some other method. This is a critical point. Once we get past this our quantities are down. We don't have to have the same reply. I I CHAIR CAST goes out first class in any case. FLOOR I know I but it 1s lost. CHAIR A separate mailing is certainly something •••••••••••• ~ C'" .,.) Page 17 o FLOOR - I went back. I didn't know I had it. I went back and looked in CAST and found it. I had gone right past it the first time and you're not talking to people who are here. W,e'll all look for it. We1re not the maj ority I by a long shot. CHAIR - Well worth considering. Thank you. CHAIR - The gentlemen in the back. FLOOR - You shouldn1t have to go through a special first class mailing just to get you to read the appropriate place in CAST', or the appropriate ballot. That1s what Cast is all about. This is what we are trying to do - save a little bit of e,xtra money. For heaven sakes I please read it page by page. Please read the letters from Joe Doakes to see what this is all about. CHAIR - I have a gentleman down there. FLOOR - I just want to say in this case I as in so many cases I working with the practical situation is going to require an awfully lot more than working with the theoretical one. We can look out for this but what about the one's who are not here? I CHAIR - An there happens to be about 800 to 900 installations that are not repre s ented at this meeting. FLOOR - Hovv many must vote to establish a quorum for this? CHAIR - o This has to be a mail ballot I which means two-thirds I something like Page 18 800 or 900. However the present by-laws require the approval of two-thirds of the members. They would all have to vote yes. I FLOOR - You have 300 people here and there are roughly 500 .•••• •.••••••• CHAIR We have 300 people but there are not 300 installations represented here t I don't be Heve . I FLOOR - Nevertheless t the first class mailing will call attention to it. This has developed into a very difficult situation right now to make our initial requirement for a quorum. CHAIR Thank you. FLOOR - A very interesting point is that 1 if we can get this one ballot passed, we can kick out all the dead beats who don't answer and then we'll have a quorum again. But in the meantime l we have some number of dead beats who never answer. O.K. so they don't read CAST so we'll save some expenses by not sending them CAST or anything else after this. We have to get this passed, because for now we can't kick them out for not answering the ballot. I CHAIR I agree that almost any meas ures are warranted to get some res ponse immediately. FLOOR - I recommend you that you put this first clas.s mailing to a vote. CHAIR I hear your words I and, personally I I am inclined to agree with you, but I will have to review our financial status. About 200 for postage, plus some labor charges I of course. Folding and stuffing the envelopes and so forth. o Page 19 o FLOOR Suppose we don It get back enough votes, what happens then? CHAIR Then we keep resubmitting it. FLOOR I apologize immensely before I even start, but 11m going to say it. We are a society of professionals in Data Processing. Welre supposed to be experts in fine procedures and good systems. We are in charge of installations spending lots of money for high powered·equipment. Let's not be penny ante about running our own organization. I detect this in all together too many res ponses of the Executive Board and e lecte d officers I and I to my chagrin I I hear it from the floor. Let I s spend $ 60. Let ISS pend $1,000. Let I s get an organization that works for our benefit. CHAIR At the moment, if we go wildly over budget I the registration for San Francisco will not be $25 - it'll be $35. (Laughter and clapping) FLOOR Wei 11 mail them out first class. CHAIR They will go out first class. CIAPPING CHAIR There were two other hands raised. Same comment, or generally so? Further comments? FLOOR I just wanted to pose a question, Jim .. Is there any reason why or why not our registration fee could not float between certain bounds depending upon our particular situation and expenses ........... . CHAIR - o It does now. <.;.,.. "} -~ Page 20 FLOOR - Ididn't know if we were illegal in this respect. CHAIR No, we aren't. We decide how much we need. We have to try to get it out of meeting registration. That's the reason we left in our amended by-laws the ability to impose a subscription feed on CAST. It is a little unfair I because of this fluctuation in the registration feed. It might always happen, we'll say, that one particular region wound up having to pay the highest registration fee. We are considering other methods of financing. Definitely. But at the moment we can't even legally impose an subscription fee for CAST. Are there any comments? FLOOR - I just wanted to second again what the last gentleman said. We spend many, many thousands of dollars on computers. Man-time cost thousands of dollars. Half an hour of computer time is not really thought of as being expensive. Half an hour of computer time is $25 or $30. Please don It think small. We've got bigger things to get out of this instead of worrying about $10 more in registration fees. CHAIR Part of our problem here is there are a lot of 1130 installations I and 1130 .installations are one and two man installations. And they do have cost to worry about. They are in the same fix the 1620 group was years ago" I I m talking about the maj ority now. FLOOR - Neither the typist nor I could get thas clearly enough for transcription. Comments about the Boston meeting. res CHAIR I know this. It was a very poor meeting. FLOOR - I understand that people just sat and talked. I agree with this gentleman - if it l s needed, we should go ahead and attempt to get our finances straightened out now with a higher registration or with some nominal charge for CAST. For instance fifty cents a year. c Page 21 o CHAIR - At the moment there is a subscription price for IBM employees who want to get extra copies - you know - fOl' branch offices - things like that. This is $15 a year and that is about a break even price. FLOOR - About a $1 an issue. CHAIR - Approximately that. FLOOR - Let' s charge it I then. CHAIR - At the moment, as I saYI under our existing bye-laws we cannot charge for them. We can do it only if we are supply extra copies or something of that sort. Copies other than the one that a member installation is entitled to. CHAIR - (Section deleted; couldn It trans cribe) • FLOOR - It seems to me I Jim, that the message is clear that you ought to spend the money to put on a quality program l and most of the people are going to pay the money. The people who don't aren't going to recognize the importance of operating their own installation I whether it l s a one-man installation, or what it is. Let's spend the money and do a high class job. CHAIR - We agree with that and we did it. And as I said I have a guilty conscience. o PageZ2 i~ I. I CHAIR - o O.K. let's wind this up. You people have indicated that you are largely in favor and I am quite pleased, I might add , with your response.. Is this pertaining to this? FLOOR American Electronic Labs - I heard you talking about the COMMON meeting in Boston about not being well run. That was the first COMMON meeting I ever attended , and I don't agree with you at all. In fact, I disagree violently. This meeting has been run very weel, but, to me in Boston I whether it was planned well or not I it ran very well. CHAIR I agree. It wasn't planned very well t but it ran well. FLOOR It got this meeting off the ground. A lot of things that happened here resulted from that, so I see no reason for anybody to say to themselves you know - we have to look back at Boston, and say we didn't do a good job. You did. I was very happy with it. In fact I I probably wouldn't be here if not for that. C 1 CHAIR And we didn't do a good job here in my sense of the word, and we expect to do a better one in San Francis co. Bill Lane, incidentally I needs a Local Arrangement Chairman for San Francisco. He's handling both ends of the deal, but he's nearly 200 miles from San Francisco. He can't work as Program Chairman, and as Local Arrangements Chairman. He shouldn't be working as either I but we feel that we can It swap Program Chairmen at this late date .. FLOOR I feel like the mandate is clear to those of us who are here I altho we can It vote - we could vote I but you would tell us that we don't have a quorum - so why don't we do that? (Comment concerned registration fees for San Francisco). CHAIR Never mind. I think the majority is quite clear. We hear that, and , ( ,~' I { Page 23 o will consider that in discussing our San Francisco plans tomorrow. There will be an Executive Board Meeting at lunch to discuss the results that we are hearing now.. Bill Lane has some comments .. He's the guilty party for San Francisco. BILL LANE I hear all of these things .. We haven't discussed the raise in the fees, but I can almost guarantee tney are going up. The first mailing for the San Francisco meeting will contain approximately the following material , and will come out approximately October 1. It will contain three hotel registration cards. Please get them in. It will contain a blurb about how great San Francisco is; I think it is the best city in the world. I'm biased. It will have some information regarding the wive's program. Weld like to see a lot of wives out there .. You ladies bring your husbands along. Maybe we can send them out to North Beach. It will have some general information on the meeting, and will be about October 1. We expect, hope, and ask for returns on this information. We would also ask that if you have some questions, if you have some items that wish to be discussed, that you get to your project leaders or to your Division Chairman, before you go home tomorrow so that they will get on the agenda. I am not about to put anybody's "non1l-return on ,the agenda. I'm not going to make an agenda for you A s lot will be there, but in forma tion will be printed only if it is submitted. And submitted means by deadline. There will be a second mailing approximately (both of these are going out first class; that's already been decided). November 1 which will contain, for those of you who did not get your hotel card in, another hotel card, and the agenda. This is the tentative agenda.. The final agenda Wil, be handed out at the meeting .. Please get to your Division Chairman today. If you can It find him today, corral him tomorrow. If you can't find him tomorrow, the names of the various people are in the agenda. If you can It find anybody els e I . get the information to me, and I will send it to your Division Chairman, but let's get it out there. San Francisco can be a great meeting .. In the past, the Western regions have had a slightly lighter attendance than we ha-d· in New.Drle.ans.. I was not at the Bos ton meeting.. A lighter attendance does not necessarily mean a poor meeting I and, while we anticipate maybe a lighter attendance this time, start twisting arms right now - you know the boss - tell him how you have to go I I It • Page 24 to San Francisco. We will have a tour for you of IBM's campus facilities in San 10se. IBM has a gentleman who has offered to arrange bus service I and 11m going to take him up on that. There will be available at the Data Center I and possibly other~laces I computers that include the following: 1130 I 360-20 I 30 I 40 I 44, 50, and I think there is a 65 down there I isn It there? All you IBMlers. You donlt know? What1s the matter with you guys? Well, anyway, there's up through a 50 down there~ There are Data cells; you know I thatls the little tweezer gadget. Anyway I the San Francisco Data Center is well equipped. There are a number of pieces of equipment there. You will be allowed to reserve time in the evenings to play games I if you want. You will take care of this I WQn't you, Pat? It has been suggested, I think-casually, that we also, for those of you who are interested, hold a tour of the Napa Valley. I don't know whether any of you know what the Napa Valley is, but that's the greatest wine-growing country in the world, and there are lots of wineries out there. This is by preference at a later date. Anyway, San Francisco, the 11th through the 13th of December. Welre going to see everyone of you there. It's the last month of this year. Shortly after Thanksgiving and before Christmas. You can get all your Christmas shopping done in San Francisco and things like that. Get your papers in. There is something to be said about an unstructured meeting an unplanned meeting but as an engineer it bugs the heck out of me. I want to see some programs I and you are the people who are making the programs. O. K:? Thank you. I I CHAIR After that sales talk I give up I but I agree with Bill. There will be a report by me on the 360, 1130 and 1800 CPL minimal standards that have been distributed by PID for those machines. The 1620 would not have received a copy of them, Again l these are minimal standards~ I'll tell you what we came up with, why w~ chose them, and what SHARE'S z:-eaction to them was at the Program Library Meeting tomorrow. I'll try to make that the last part of the meeting, in case there are any conflicts with other meetings. If any of you are interested, or have any ideas at all, about what you want to do with the Program Library - fine. Otherwise, instructions are adequate. Any other business!? o c Page 25 o FLOOR You have listed on your agenda discussions about IBM - customer relations. For those of us who are first attending I Ild like to hear what you have to say about the financial relations. CHAIR Fine. IBM publishes our proceedings for us at the moment. They have suggested that this would be a legitimate fiscal responsibility for us, but quite agree that we are not in position to take it over at the moment. We have to have a reserve in the treasury before we can do that. They maintain our Program Library; there1s no question about their continuing to do that. CAST and the Newsletter I which preceeded CAST, and is now part of CAST have both historically been published by COMMON. IBM provides certain help at these meetings in the sense of IBM personnel - They give us an indirect subsidy in the shape of IBM people attending the meeting and paying the registration fees.. There is no direct subsidy from - Oh I Yes I the coffee breaks, audio visual equipment, special equipment of that nature I signs - the administration facilities J for instance they have a 2400 Zerox in there for us, badges material of this nature - they do pay for us. I should say that there is no cash subsidy. They help us negotiate with hotels. I I C" ;' I JUDI GREENE- I would like to say thank you to the people of IBM. Those of us who were at the 1130 meetings - we got a lot of very important information, and a good deal of it was impromptu; we appreciate it very much those people who did speak to us. CHAIR Incidentally I since there are new members present and Arnold Smith was not introduced at the new members I meeting I or at the General Assembly: stand up, Arnie, and take a bow - you and Pat, both. On the transportation to the boat - there is a map illustrating the route I something like five blocks. 11m told they are rather long blocks, but we had planned that most of the people would walk down there. Cab, that's fine. o Page 26 FLOOR - Can we park? DAVE DUNSMORE - There is parking on the wharf down there. The boat is to be loaded between 5:30 and 6:30. Cocktail hour until 7:30, and at 10:30 we will be back. I VVill try to arrange for cabs to be present in that general area I :because it is an up-hill walk back. CHAIRIf there are no other comments I Ill! entertain a. motion that we adjourn. Second? All in favor I move. c' , 7 \ o SESSION NUMBER T.4.2. DISCUSSION PLANNING SESSION FOR FUTURE MEETINGS OF THE EDUCATION PROJECT OF THE APPLICATIONS DIVISION. ATTENDANCE 20 o 317 C', ,. SESSION NUMBER F.1.1 SPEAKERS W.K. THOMSON J.R. AHART, INC., DAYTON, OHIO DISCUSSION USING 360/30-40 R.P.G. FOR FUN E PROFIT. MR. THOMSON DISCUSSED HIS COMPANIES EXPERIENCE WITH R.P.G. HE POINTED OUT IT'S POWERS, IT'S SHORTCOMINGS, AND WAYS TO OVERCOME SOME OF THE SHORTCOMINGS. THE PRESENTATION WAS ABOUT AN HOUR IN LENGTH WITH A QUESTION AND ANSWER PERIOD FOLLOWING. APPROX. 50 PEOPLE ATTENDED. c o USING 360/30-40 R.P.G. FOR FUN AND PROFIT PRESENTED AT THE COMMON MEETING SEPTEMBER, 1967 CINCINNATI, OHIO LIAM K. THOMSON GRAMMER o J. R. AHART, INC. DAYTON, OHIO TABLE OF CONTENTS INTRODUCTION I. COMPILER EFFICIENCIES AND DEFICIENCIES II. LANGUAGE PROBLEMS THAT CAN BE SOLVED AT SOURCE LEVEL III. CODING TECHNIQUES WE HAVE FOUND TO PRODUCE MORE EFFICIENT PROGRAMS IV. EXECUTION PROBLEMS CAUSED BY D.O.S. DEFICIENCIES V. CHAINING (INDEX SEQUENTIAL FILES) VI. CHAINING (DIRECT ACCESS METHOD) VII. TABLES VIII. ASSEMBLY LANGUAGE SUPPORT BY USE OF THE EXIT INSTRUCTION '0 ., IX. IMPROVEMENTS WE WOULD LIKE TO SEE 330 INTRODUCTION Using R.P.G. for FUN' and PROFIT? Prior to the System "360" Happy R.P.G. users were few and far between, but we feel it has come of age and. if given a chance can find its place in any installation. The intent of this paper is to encourage the Use of R.P.G. and. to pass on the good points and weak points we have found through eight months of use. There are six different coding sheets used in preparing a program: Fil:-e Description, File Extension, Line Counter, Input, Calculation, and. Output. (See Attachment 1 for examples) The R.P.G. manual has a section for each sheet which. covers all the entries for it. We have found no drawbacks in using coding forms over free form which we had been used to. On our first programs, we seemed to be bumping heads with the lip, calculation, olp cycle that is the fixed logic of an R.P.G. program. (See Attachment 2) We felt restricted because we couldn't control the occurrence of the lip cycle. We have found that by making card.., disk, and. printer layouts and. then planning our programs from these the logic fits many applications very well. o it ijQ , '$I i , ,,## ::;;m , "MAM UtWtUl4,iTi4¥iillMiC"' ~ I, 1 . I. COMPILER EFFICIENCIES AND DEFICIENCIES j 01 I- To date we have found only one logic error in the compiler. I If the same name is used with different tag operations on the calculation specifications, it is not diagnosed and the last one encountered is used. This is similar to duplicate statement numbers in Fortran or duplicate labels in Assembly Language. If the level break field of the first record of a file that has level breaks specified is zero or blank, the level break indicator is not on for the first detail cycle. The compile time for peripheral gear. p~ograms will depend mostly on your With a (1443 Printer, 1442 Punch, 2501 Reader) a (441) source statement program can be compiled and cataloged in five minutes and seventeen seconds, (60) source statements or less takes two minutes. If you take object decks, the speed of the punch will be the controlling element of compilations. You will get larger object decks from R.P.G. than you experience in other languages because all fields are initialized. To date, for a 32K machine, the largest object deck we have generated is 500 cards and the smallest is 100 cards. Because of the speed of the compiler, we have found it economical on some jobs to use a compile and execute rather than maintain a source and object d.eck. c~ I o II. LANGUAGE PROBLEMS THAT CAN BE SOLVED AT SOURCE LEVEL Our early programs were frequently canceling due to reading an undefined record type. The HO indicator is used for canceling a job for this reason and eleven others, so the programmer has no way of deciding anything based on HO. We have found that leaving the record identification code blank on single record type files and using a blank specification as the last one of mUltiple record type file and then checking record type on the calculation specs and taking action from resulting indicators used on input gives the programmer good control. (See Examples) We found it was very difficult to obtain a skip to a new page and put out headings after level breaks by trying to condition headings on overflow alone. By using the level break indicator at detail time in a (or) situation with overflow - Group Printing Feature - we have eliminated this problem. (See Examples) We found we were getting some extra pages in reports on which we were doing an internal line count. This is because if a print file has been specified and an overflow indicator is not used as one of the first three indicators of any olp line the compiler generates an automatic skip to channel one on overflow. We elim- inated this by using a dummy line that is never executed with overflow as one of its indicators. Also there were some unexplainable lines at the beginning of our reports. These were the result of the.program looking for first page output and allowing any detail conditions met to print. o· We find if you have to use a not condition for printing a detail line., it must have NIP specified also to stop its printing on first page o/p. I! We noticed. t:hat printer output was not at full print speed. in programs that had little·calculation to slow them down. We found that this is a result of the program having to wait on a line to finish printing in order to check overflow. The use of the line counter specification as an internal carriage tape gives you maximum printer efficiency. Unfortunately, it was not working properly prior to release 11 of D.O.S. o ----~-----~----~-----~.------- III. CODING TECHNIQUES WE HAVE FOUND TO PRODUCE MORE EFFICIENT PROGRAMS o The GO TO operation on the calculation specification was said to be one of the improvements over 1400 R.P.G. We have found it to a powerful instruction for two reasons. One is probably obvious that is the ability to branch backwards in the calculation coding. But an additional use we find of great value is that it gives you the ability to create your calculation in modular blocks of routines to handle specific parts of a problem rather than use a resulting indicator to allow or inhibit the execution of coding. We found that the latter approach not only produced larger and less efficient programs, but was extremely confusing to write and maintain. (See Examples) The total time block of coding is entered only once regardless of the number of level breaks that have occurred. All total time calculations that can be done are executed at once, and then all total output is done. A second improvement over 1400 R.P.G. is the use of mUltiple input files. We have found several uses of this feature. One is specifying the same "file with two different names so you can process it twice in the same program. An example would be where totals are needed to calculate percentages of detail lines. If you specify the same file as a primary and a secondary with matching record, R.P.G. will give you the detail records for a group twice. You can add them as they are processed as a primary file and. then calculate percentages and print them as they are processed as a o -A,;';'; H, secondary file. ;, (, ,4,$" t. ,X, .QA#U$ Uk;aAJUi4hlUW&=,M&£Z c IV. EXECUTION PROBLEMS CAUSED BY D.O.S. DEFICIENCIES When a disk file is specified as blocked and a full block is not generated one time a record with a key the length of the data is generated and a blank d.ata record written after it. If a 'Utility created a disk file and it has not been sorted by sort merge, an R.P.G. program will not recognize the end of file written by the utility. When a file has been specified as an 'Update file, the last record to be updated is not returned to the file. All of these problems have existing apar's to correct various levels of D.O.S. -----.-~.-----------.-----~-- .. ---------- o V. CHAINING (INDEX- SEQUENTIAL FILES) If fi.le is unblocked, make the input record size ten bytes larger than the record length. to handle records from an independent overflow area. Be sure to include a LBLTYF card when link editing the program. If key fields have been packed you can get a no record found condition because the signs are different. Chaining indicator is specified on chaining file only. When creating the index sequential file, be sure the key field is reproduced in the record for all files, blocked and unblocked. c· If at all possible do not pack key fields, becayse there is no ability to chain from a card file if keys are packed. If no record is found HO is turned on. 337 o VI. CHAINING (DIRECT ACCESS METHOD) The Addrout option of the sort merge program can be used to produce a table of keys and associated track addresses. This table can be used to convert keys to a chaining address through a table LOKUP operation. This method will allow the user to add records with an R.P.G. program. By putting blank key fields in the original file, when a no record found occurs in the table LOKUP fora key then a LOKUP for a blank key will give a track address for new record, and setting of a resulting indicator will let the R.P~G. program know this is a new record. c c o VII. TABLES If a HI/EQUAL or LOW/EQUAL LOKUP is to be performed., the table must be specified as ascending on the file extension sheet or an invalid. LOKUP will occur. Also the use of the resulting indicators is low gives next highest value, high gives lowest value. o i.11 I~.' I" o VIII. ASSEMBLY LANGUAGE SUPPORT BY USE OF THE EXIT INSTRUCTION We have found that the ,.ability to interface R.P.G. and the assembler language through the RLABL, ULABL, and exit command.s is very beneficial. The linkage is not complicated as the examples we have included will bear out. The routines can be in the relocatable library and will autolink. The first routine we found to be of help was the ability to block and unblock a segment of an input record by a displacement and length. The need for this arose when we wanted to loop on the calculation specifications and move across an input record picking up d.ifferent fields and returning an updated value. (See Block and Unblock Routines) Another routine we have made extensive use of was a subroutine that allows the programmer to cause the program to loop between detail calculation and detail output until he resets it. This . allows the formated output of tables at any time in the program. (See R.P.G. LOOP) A great aid in debugging is a routine that PDUMPS the status of all the resultings indicators and the label fields at any time specified. (See PDUMP) J?,s mentioned before the HO indicator can be turned on for 12 different reasons. Logically, all of these cannot occur in one program but several could at anyone time, and DO message is issued to distinguish one from another. ~outine Therefore we developed a to analyze the reason it is on and print it on the console. (See HALT) ---- -----~--------- Also we found there was a need to give the operator some ability to align special forms prior to starting output. Since you cannot open or close an individual file in R.P.G. we developed a routine to allow some alignment. (See ADJUS) Finally we did not like the idea of having to read one card to get the current date so we wrote a routine to get the date from the communication region. c o • ,\" .. U , #I ; V¥UA«Alli4klUTtUM&;;;&C=M&LL22CL&Z2ERLL (See DATER) IX. IMPROVEMENTS WE WOULD LIKE TO SEE~ o 1. Ability to create and add records to an index sequential file. 2.· Ability to control when chaining should or should not occur. 3. Make the date from the communication regions available in the same manner as page number is. 4. Allow the programmer to specify if a table should be filled by R.P.G. or just have space reserved and initialized. This could be done by leaving out the from file name on the extension sheet. 5. Allow a file to be closed and re-opened by the programmer. 6. Don't cancel a program because of a data exception either set field to blanks or zeros or give control to a special routine on calc specs for handling this. 7. Allow program to have a separate block of coding that is executed. on first page only. (Calculation and o/p). 8. Use a binary table LOKUP if an ascending or descending table is used. I I c o ATTACHMENT 2 Using D.O.S. 360130-40 R.P.G. INITIALIZE PAGE olp 19 Yes PERFORM TOTAL TIME CALCULATIONS No PERFORM TOTAL TIME LOAD LABEL FIELDS ON lip SHEETS FROM 1/0 AR olp PERFORM DETAIL CALCULATIONS PERFORM DErAIL olp NOT COND. ON OV. SET eV No Yes SAl PRINT olp CONDITION ~--------------------~ ON OVERFLOW o ~Ii i SUBROUTINE NAME: LANGUAGE: BLK and UNBLK RPG (16 K.D.O.S.) PURPOSE: To allow the programmer to retrieve fields from an I/O area by changing a length and displacement value in the calculation coding. CALLING SEQUENCE: C EXIT 6 28 C EXIT 6 28 C C C C RLABL RLABL RLABL RLABL -28 6 BLK (TO STORE IN I/O AREA) 33 UNBLK (TO RETRIEVE FROM I/O AREA) 33 IPBLK PIECE LNGTH DISP Lj·3 (see Note 2) (see Note 1) 30 30 31 NOTE 1: PIECE may be established as an Alpha or numeric field. If packed data is going to be retrieved PIECE must be numeric, otherwise RPG will pack the field again if it is moved from PIECE. NOTE 2: IPBLK must be an Alpha field and can have length established on lip specs. OPERATION: BLK UNBLK Takes DISP and adds it to address of IPBLK and moves from left to right out of PIECE the length of LNGTH into that address. Works the same as BLK except the move is from IPBLK to PIECE. .-~-----.------.--- c ~:~ * -,. RLK WRITTEN BY R. c. nICE JR. IBM DAYTON "- o BLOK RLK TITLE START EXTRN USING STM LM ZAP CVB ZAP eVB AR BCTR EX L~1 '*** GENERALIZED O/P BLOCKING ROUTINE -- DOS RPG IPBLK,DISP,PIECE,LNGTH BlK,15 2,5,SAVE 2,5,REGS DWRO,0{2,3) GET 'DISP' 3,OI.-./RD DHRD,OC2,5' 5,OWRO 2,3 5,0 5,MOVE 2,5,SAVE GET 'Lr"-JGTH' (2 BYTES) BYTES) ADO 'DISP' TO 'IPBLK' SUBTRACT nNE FROM 'lNGTH' FOR 'EX' MOVE 'PIECE' TO 'IPBLKCOISP+l)' BR 14 SPACE MOVE MVC 0(0,2),0(4) RF(;S DC ACIPBLK,DISP,PIECE,lNGTH) SAVE DS 4F nl,\/RD OS o END END OF DATA o (2 ***' UNBlK ** WRITTEN BY R. C. OICE JR. IBM * TITLE '*** GENERALIZED UNBK UNBLK DAYTON lIP UNBLOCXING ROUTINE -- DOS RPG **' . START EXTRN I Pt.l,L:-. ". i JP .. P ~ :_CE, Le-···' USING tF \l",~_5 STM 2, ./"1 LM ZAP 2,5,t tl such statistics .. a) 1!~r!4quency (iistri~jutions ,j,jased on Verual and i"iath SA!l' scores, all(:i ra,nk in clas~~ carll i)(2 q(jn~.u~att;'!d for eaC(l prc)qraro ()f (\~ac:) scllool by appoi{~\.; I accept~:k! 811d J.,)re-re9istered applicclnt)i • t» Gco number, address, ata. It may ~ \lSed to verify student, st.atus. 2. Reminders. Reminders on loanud books and overdue not.ices ma~i 00 produ(..~d for the library.. This flhould greatly facilitate ,-'*Ollection of loaned hooks. 1. Room Schedul~ls. Roo.m schedules r~flect:ln9 its use can be made availabl.a to physical plant in order to facilitate service 12 o schedules and allocation of rooms on special requests. F. Central Mailing Central mailing may use the eSDS to produce mailing labels for all general and selective mailings. G. Alumni Association. A major report which may be produced from the Alumni file is missing information lists. Periodically missing information lists, designed to facilitate ti~e collection of data to the Alumni file, can be produced. A typical missing information list might be one containing all Alumni who do no~ have a telephone number on file. 1. Directories. Al'~i directories can be alphabetical, geographic, or class and school produced from the Alumni file. o 2. Fund Raising Of all the areas in which the Alumni file is used the Alumni Association, fund raising is undouotedly the most important. For t..ltis reason, a mora detailed account of this application will be given. by a) Worker Assignment Lists. Lists of all ~~umni with a better than average giving history can be produced. These lists may be used to aid in recruiting workers that will participate in the annual fund raising campaign. Phonot..~.on Pledge Cards. The phonothon pledge cards may consist of two parts. One part may contain personal information, givint the history of the alumni; and the other may contain his na~e, address, and a place to write a pledge. These cards are used by the workers to contadt the alumnus b) by telephone and try to solicit a pledge. One part of the pledge card is mailed to the Alumnus reflecting his amount pledged; the other part is used to enter the result of the telephone conversation in the Almoni File. o 11 o e) ...lnden. DariD9 the capalgn, tIOD~ly ..-iadera can be produced fna the Aluam1 fil.. !bea. reai.ndera are produc:ed for all al....1 Who be". not fulfilled their p1edge. !'hey .bow the ano\1At: ple"pd, the MlOUD.t. 91ven. to date (If any), ad a balance due. Rea1ndera are then mailed to the Alwanu. 1n the .hope thatt • payment. for t.he .amO\lJlt. pleated will be .ent. ell to e) . . .lpta. Daily receiptJI of ...,..ntJI can be pJ:OC!uced and mailed doDo" at:. the . . . . Uae that the file 1& updated. ~be Block 8beeta. Block sh••ts aa1' be 11st.lDg8 showing a detailed l1at of 4oaon . .a ao\lftt. 91ven. by each. donor. They also sbow tile tot.al dally latake. f) Worker Reports. Worker reports can be produced periodically to report to the individual workers the PX'09r889 of their group_ 'fhe •• report. may contain the worker'. name, followed by a list of proapeota, the amount pledged, and the amount qiven by each proapect. 9) Proqre88 Report•• Reporta can be produced to rafl.ct the amount of pro er of pledg•• and t.otal number of donora can al80 be produced to ref.lace the overall ProtX'es •• h) Year-end Analysi •• Adota11ed year el\<1 analysis refleotin9 t.he fund raising capaip can be produced. 'this analysis may ran<]8 fZ't'ft a qeneral university-wide pertomance analY81. to •••lective qeograpblc and school-cluR ana- lysis. c 14 o d. l',)ursar .. ~_·~w _~ 'rh~ office of the ,~3ur9ar can ex.t.ract. infortna\tion from both t.he Admlssinn >1auter Filo and the Studl/!nt Cata Fil(~ ~ ",h:,.taltl anJe:(ception lists may compris(,~ tho major us(e vf the Admissicns ['~agter ,Pile by the nurS~tr. Receipts of tui tinn paym.ent. "may ,L'6 producecl by COMpnJter for t.he T\ursar, but oftt.~n, t.h~ students c;l}ncf911ed check is reqarde6 S:J 9uffic.i~nt receipt. A l i .. t of allprc . . ·rcqistered Freshman. irH.,,:ludinq amount ,~f tuition prepa.1d, may be produced ?rlorto 1~qi8trat1on. Th~~ 1. follo\'1intl arc Tui lion and Fees tt-IO usee of the SDF hy the Bursar: ra'Y"t~nt l'ratHl{,lction. Prior to registra,tion# a set of pre''''f,Hl.oched payn':ent. cartiS l~',.ay be produced 'Ir/t'1ich conta.in tne type and amount of any financial aid autilorized. These cards may then ,be used to record any payment made on tuition 'and fees. and later used to update t.he SDF. 2. Post-registration Totals. After registration, a summary of totals can be provided for t.'l. Bursar. Totals, such as amount of tuition and fees paid and balances due~ can he helpful in verification of account. balances; as well as enhancement of the illumel control. I. Financial Aid ~........ J • r T~1e Office of Financial Aid may utilize both the all'.! t;:1C ~DF. The followln9'ma'y be output from t.he .ru·r~'t p.~~~p ret-;ardin\J ineominq 1. S\~ary ,A 1~1 Frt~sbman. Il1formation Labels. of summar} information can be provided for all applicants who have lieen accepted for admission. This infonnatlon call be used for cross reference on .11 who apply for financial ald. 2. o Financial Aid Applicants' List.. Prior t.o the Pinanelal Aida Award Committee meet.inq, 1$ c a list. CWl be produced of t.hose applicants for which a CSS card bas been reeeivod. Tbis list. may be ordered by predicted OP1, adjusted need, or some other criteria. It. sbould cont.ain the pertinent personal, academi.c, and. financial information which .1s needed to make award deci- sions. 3. Pinancial. Ald Autherlaat.ioD '1'ransaction. A .et. of markseniaf'f.t cards may be punched concurrent:ly witb the financial aid applicants list for \188 by the awards comtnittee. As awe,rd. are made, tbe amount alld type may be marked on tbe card for later use 1n updating 'the NIP. 4. Pinane!al Aid Avar(} Letters. As the NW i8 updat.e.d with t.'e mark-senae authorization cards. a let.ter of award can ~ prepared for mailing' to ~ .tudent.. S. Financial Aid Candidate List. After the pre-registration de.tiline, a list. of tboae st;u&!mt.s who haw accept.ed the awards CAll ~ 'produced as a follow-up pmcedure. TIli. listing may bet used as • final office copy for report. preparations and inquiries. , • Suaaary Tot.als. In con,unotion with producing the candidate list, • ccmplete J!'891ater of summary totals can be periodically print.ad. Such ltel1 and a'llllOunt accumulatJ.OD8 will be very useful in maint.aining control of funds as well .s preparaUOIl of required Pederal and Stoats reports. The SOP i.e used for 'procesalnq \U1dargraduates by the Office of t:be l'iaanclal Aid in essentially s . . manner .a the AMP 1s . used. tor pzoce•• llV1 tnCC'Miaq freshman. !'he slCJDlflcant cUffennce 1s tlle wae of Unlftnlt.y acadea1c oat.a lnl1. . of Mgo .cnool 4ata ...ad boaz-tl &OOR5. J. <;:1ub.'~~.~!.&1 Ae8OC!~~~OB., B~! • .,.. SOP may be usea by the varloue Unl".nlt.y club·., lIOOleU.a, aDd. otMz- oqaal ••Uoaa wboIIe tm4 lUly be aaa4ea1c f athlet;lc, 800ial, etc. A ....l.ty of lafomat!on 1. 89&11.able fOlr aol1c1t1Ag pot.cmUal ...-ben, 01" OODt.a~lnt pnHDt - - . n . !'be . .'or ... thea '8 apec1alaail1Dg label. or pze-add...... ea.velope•• 377 -4 c 16 0 "', " K. !,resldent I. Off~C?C! The office of the President, or t.ll.Board of Trustees, require the addit:ional aovantaqe of an information system over a record keeping system. That advantage is the developement of informat.ive stat.istics from which deci- sions on policy and future planning can be made. Prior year to current year comparison totals &\0 ratios, wi" the myriad of variables, could render the recor~~eepin9 • small portion of the system. For example, to know -.rl0 relative quantity of applicants requesting dormitory res! .... Clence over lK'JIRmUurs could facilitat. the decision to build a new dormiborJ. o 17 C(h~CLUSIOtf , i 1 , .. lit • A Coordinat.ed St.'udel'lt Data System must encompass all offices of the University that have a need for studant data. Sucb an a11-1nclusiva~ly8tem will enjoy the followlnq advant.ages. Non-duplication of .ffort is avoided throuqn sinqular 1ntroduction of source data. 'rbrough the establish,;-nent of Off'i '~>39 of Primary Despon.tbil! t.y (OPR), eas~ of file main~nance 115 aobMved. Economic availability of data for all University departments is gained through cent.rally maintained student da,ta. Con- sistency of infomation 1. assured throuqh the inherent.:. compatibility of common source data. Last., but not 1(t;8J:..t, the Ut\lwrs1ty will realize an ,abundance o,fresearch dat.a to l>e used in the analysis of University performanoo. ;'Jlth the addition of the necessary terminal equip:'1\;)nt; the eSDS 1$ potentially a :real-time system, t.hus t!l'()vid.in~J the special advant.aqes of such a system. C\ '·"1 -->'7(1'·-J i ' I (l) 0 ..... DATA . .. . nPE PRIMARY SOURCE row OP PlUMAft RUPOtf • 17. Spouse'. 18. Reli9ion - Name C C Registration roan KP ReglatratJ.oo Student Hospital Insurance Activiti.s 20. Studen~ 21. H1gh School Name C _9:latration Pom C Student Affain Pom Kit Regl.t.~... Adtd . .ion KP A41I1••.toa. Meqiftrar AppllcaUoo 22. High School AdcS..... 23. High School ae A AdIIi ••loa. Adrd ••101l Applicat.ion A Adml. .lon KP Applloa~lon 24. 'l'ype of H1.9ill School 25. Year of Graduation MIIl••tea. Applicat.ion A Uiqh 8011001 Average 27. nigh School 28. SAT Scone Adm1 ••1011 AdlU ••101Ut ItP A AdIIi ••iona A A Adlai ••lons H19ft School KP/pc H19ft School KP/PC AdaJ. ••loaa 7ranacript Ra"\k AdIai ••lon. Applicat..loD (H1qh School) 26. Re91auU' Re91et.ru: Pon 19. orrICK ttranaeript Eft PC AdMl..1oaa PC AdIIi. .lone QED Card 29. Ach.......nt. Score. A ETS CEED Card 30. Transfer St.atu A Adad. ••loa Applicat.ion KP Adlai••loae 31. Year of Graduation Present Program A AdIai •• lon KP Adai••lone 32. School l::nrolled A Admi.sion Application 1(P Regist.rar Application 381 () (3) 0 •• Mft ........ 33. 35. ....- H. Counu 37. lIcbedul. . f eboft I •• II. 0 o h"09na Bazol1ed 'lIPS A .... Ra91.t...'t1oa A "'1.~ftS' ",iatE'eUea ...,1."U' KP "'1._~u PiD_alal Aid baa II/S Pia_aia1 Aid .la_del Ald N/8 P1DaDaial Aid ft....c1a1 Aid MIS PlnMclal Aid MIS .1naac1al Ald P 41. Won . .uta. .....vU' GJ:'ade "po~ 8abolanhJ.pe .....17 PlnDOia1 at A 40. tl. Reglsuu Gude "POft . GS'_u 1D Aid or A Lo. . Aathod. 42. OPl'lCB .PUMARY. USPOH • .Regletru l'oEIl It. QIr_U 0 AdId. •• lon 1e918und toJr ........ AdIai •• ioll 10M Appl1caUon Maulo81Ued Cl... . ....... Appl'oa~lon 'leacbezo Cenif1oaUoa eun.aUy PRIMAn' 80URCE rom Foa ria_lal Ald .. ro_ Eft ess Can I'1DUCial Ald o S F S SIn f\J t\1I 1M R F R F • 1 • ') SPEAKFRS R • A. F f) IAI AR I) S, I R Men R p n RAT Tn t\\ n t\! L ARn RAT n R Y AlJ Tn MAT InN BAS E n SYSTFMS c o o Presentation at C01VIMON Meeting Cincinnati, Ohio LABORATORY AUTOMATION BASED SYSTEMS I !e September 8, 1967 o R. A. Edwards IBM Corporation 112 East Post Road White Plains, New York LABORATORY AUTOMA_TION BASED SYSTEMS (LABS) o Definition LAB Systems are defined as the application of largely sensor based 1800s and 1130s in the laboratory to perform functions such as: A. Data Acquisition Recording of data at a rate dictated by characteristics of the instrument and the experiment. Data Handling - Data Massaging prior to analysis. Filtering Averaging Scaling Validity Checking B. Data Analysis Selection of appropriate analysis routine based on: Accuracy Requirements Speed of Response Analysis for purposes of interpretation of instrument output. c. Data Management Identification- Comparison of interpreted data to known standards. Display of experimental data. Cataloguing of experimental data. D. Experimental Management Reset of experimental facility to next condition Real time interaction between the scientist and his experiment o A laboratory is also defined as a facility in which various levels of instrument (sensors) usage can take place. In addition, at least 80% of the instruments found in a laboratory fall into the spectrometer category.; t. e., they produce a graphic output as shown below which is characteristic of a material/compound being analyzed. Concentration Energy Etc·. Wave length, mass #, energy distribution, etc. Common Instruments These instruments in a research laboratory can be involved in activities such as: Pilot Plant Studies Quality or Production Control Testing (Components or Systems) M~terials Analysis (Analytical Chemistry) Basic Research It is therefore possible to find anywhere from one or multiples of one to twelve different types of instruments in any given laboratory. For instance, a petrochemical laboratory may house multiples of a doze.n of the following types of instruments. The mix is dependent upon their concentration on a particular classification of chemistry . • - 3Types of Instruments c Analytical Amino Acid Analyzers Mass Spectrometer Nuclear Magnetic Resonance Spectrometer Emission Spectrometer X-Ray Diffractometer Multichannel Analyzer Infrared/Ultraviolet/Visable Micronove Spectrometers Electron Spin Resonance Spectrometer Spectro Photometer Ph Analyzer CHN Analyzer 02 Analyzer Gas Chromatograph Mechanical Tensile Strength Analyzer Dynamometer Film Thickness & Hardness Vibration Table c Medical/Clinical Electrocardiogr aph Electroencephlograph Electromyograph . Electrophoresismeter Auto Analyzers Coulter Cell Counters Cell Scanner Nuclear Pulse Height Analyzers Spark Chambers Film Digitizers Neutron Time of Flight Analyzers X-Ray Flourescense Electron Spectrometer Beta, Gamma, Alpha Counting Systems Other C • Viscosimeters Refractometers Hardness Flame Photometers 3f7 ':I J 1<111 I - 4- 0 '," ," Incentives The incentives to automate the laboratory are both tangible and intangible ... both benefits are clear advantages over any alternate automation approach. General I C' o a. All the simple and obvious research has been completed. Today scientists require elaborate experimental facilities which may take years to plan and/or build. The ideas behind the use of these new experimental devices must be tested within a one or two year period after completion of the facility. The experimentalist feels compelled to publish his findings within that period or he may be pre-empted by someone else taking a possibly more advanced approach. b. Because of the precise timing requirements of the experiments conduct/control or the quantity of data generated, the computer approach is the only reasonable way the experiment can be accomplished ... some experiments generate thousands of events which have to be individually analyzed to substantiate statistically the existence of a new material. c. The computer can tell the experimentalist when things may be going wrong ... is the experiment data valid? Also, the cost of running experimental equipment may be significant. .. an on-line computer may prevent malfunctions in its operation, thus increasing its safety level as well as availability to the researcher. In addition, the speed of the computer will allow optimum usage of the experimental subj ect. .. as in the case of a fast changing radioactive isotope which is decaying into other materials. d. The digital computer! s availability and versatility now allows it to simulate experiments common to the physical sciences. Such work often uses higher order languages which are written in terms understood by analog computer users or people used to solving complex mathematical problems. e. The computer system allows the experimentalist to obtain improved accuracy either directly by means of the A/D converter and the !!absolute!! nature of the digital computers problem solving capabilities or indirectly through the statistical treatment of meager or vast amounts of experimental data to 0 btaiI1 correlations. It has been stated that instruments have had their accuracies improved by one to two decades through the use of the digital computer. - 5- o Specific a. Assurance of greater precision for data acquisition, data analysis and experiment control. Data handled by a LAB System in digital form (assuming a properly designed front end) will provide significantly greater accuracy than in conventional techniques. Conventional Techniques Method of Recording Instrument Error Readability Strip Chart (inked) 1/4% 1 part in 150 Oscillograph (heat sensitive) 2% 1 part in 50 AM Magnetic Tape 3-5% FM Magnetic Tape 1.75-3% PDM/PLM 1-2% o Note: When the total data acquisition routines associated with conventional techniques are conSidered, the accumulative errors have been as high as 14%. Significant additional errors are usually introduced in the system through manual analysis of the data and control of the experiment. LAB Systems Techniques ('with a suitably designed front end) operate with an instrument error in the order of . 01-. 1% and has a readability of 1 part in 16, 000. b. Consistent (24 hr. /day) experimental observation and control. The sampling of sensor based data can take place under programmed computer control, on an interrupt basis at varying time intervals: 1 sec., . 1 sec., .01 sec., .001 sec. , etc., or on a demand response basis. The important point is that the computer can faithfully take data on a fixed or variable basis presented by the experimental conditions during the life of the experiment. C I, -, - 6- o c. Decreased incidence of lost or worthless data due to instrumentation or system malfunction. A typical input from an instrument may contain valueless data. In fact, a very large fraction of the data generally falls outside of the areas of interest to the experimentalist. The comparitor circ.uits or editing routines of a LAB Systerr.l, can insure that only data within limits is digitized and stored. In comparison when blind recording techniques (FM or analog magnetic tape) are utilized, it is common to witness periods of lost data in large blocks. Digital syst(;ms can be programmed to self-checking. d. Release of scientists from routine tasks such as data taking, scaling, calculating, experiment control. A typical single crystal analysis may require 2, 000 different adjustments to the goniometer/scintillation counter head; in addition in excess of 100, 000 pieces or data must be extracted from an analog record on a strip chart recorder. The magnitude of this problem is obvious, considering that the maximum manual digitizing rate is 8 points/minute excluding the goniometer control problem. A LAB System can do these tasks automatically. e. Increased control in the conduct of the experiment. Research at times operates on the fringes of known operating limits. It must push the state of the art. .. enter the unknown. For examples, there are today complex analytical instruments associated with small reaction chambers that operate at high termperatures and pressures. The computer monitoring of strain gauge placed on the exterior of the chamber will allow the experiment to proceed under control at the computed limits of the rated design. f. Conservation of expensive materials such as reactants, isotopes, etc. Often times experiments require exact amounts of reactants or isotopes which may be decaying into other isotopes at a rate fast enough to produce erroneous results. Such experiments are enhanced through the use of an on-line computer which can insert or inject samples on a closed loop basis in reproductably exact quantities. In addition, if a known or changeable amount of material must be introduced which involves time dependency, the on-line computer can conduct the experiment "flawlessly" within the given time frame and thereby limit the effect of an isotope r s degradation upon the experimental results. An ancillary benefit in such environments is that the computer can maintain an inventory of isotopic materials under use and at hand. This is required by AEC regulations. I o I ;~ I:,.~ I - 7- I g. The fringe benefit of obtaining a greater understanding of the complex research devices/instruments. Instruments such as a mass spectrometer contaln pO~Ner supplies, ionization gauges, sweep voltage controls, etc. The mOnitoring of the criti~al points in a mass spectrometer's components will allow the researcher to quickly determine if the equipment is Ifin phase II, i. e., for a given situation (setting) are all other subsystem outputs realistic. The data correlation power of the computer will allow quicker debug time of the instrument. In addition, a history of machine operation/malfunction can be retained in disk memory to pinpoint wear in the components of the instrument. h. All experimental data is in a retrievable form. Data in a digital form, on any recording medium (except printed on paper), i. e., magnetic tape, disk files, data cells, can be quickly retrieved for analysis purposes at a later date. Also, the data can be added to during the experiment. Such capabilities are required to identify materials from a large data base such as ASTM tables. These tables are used today in an off line manner to identify compounds. i. A "Quick Look" at experimental results: The results of an experiment's progress may apparent from raw data. The on-line computer will allow the research to analyze an envelope of data (a sampling of data over a given time frame) and print such data on a typewriter or display it on a CRT. This ability proves invaluable especially in complex experiments where computed theoretical results can be compared with the analyzed Ifquick look" results. Such information may cause a complete redirection or reappraisal of the experiment. j. "Self-Checking" Capabilities The on-line digital computer is a self-checking device ... the only absolute device in the experimental system. It has the capability, if properly programmed, to impose dummy voltages, bit patterns, etc., in control circuits, and by putting the normal control element in a hold or bypassed condition, check the correct functioning of all components. The same program can even Ifexercise" the control elements during an experiment Similar capabilities allow the on-line system to standardize instruments automatically on a timed or as required basis to eliminate base line drift problems. k. Operator Training Routines ~an be written which will allow the new analyzer operator to simulate the conduct of an experiment. As systems become more complex, such capabilities will prove more useful. Training can utilize the computer's spare time. 3qJ o c o I" - 8 - o 1. Exact Time Correlation The correlation of time with experimental procedures is an often over looked problem. When recognized it becomes an expensive problem to solve. Even if strip chart recorders have time printed on them it is impossible to accurately relate i~ to manual experimental procedures. On the other hand, the digital clock in the on-line computer can allow all phases of experimental conduct to be time correlated to the microsecond level if necessary. Time can be in relative or absolute units. m. Batch and Time Shared Usage of the Central Processing Unit The normal laboratory use of a computer today is in a batch mode, i. e., the experimentalist takes his deck of cards to the computer center for solution. NOVI programming systems exist which allow a single computer to provide batch capability while at the same time conducting on-line tasks such as data acquisition and closed loop control of experiments. n. Efficient Facility Usage The. ability of the on-line computer to compute results of an experiment within minutes after its completion can greatly increase the utilization of complex analytical equipment. o. New and Timely Experimentation This incentive cannot be over looked. The technical world changes very rapidly and what is research today will be routine in the future. Instrument design and data rates are changing. Experimental procedures are being enhanced by graphics, information retrieval and on-line interaction of the researcher 'vvith his experiment. Only the computer can provide this flexibility on a controlled and timely basis. I I o 392 - 9- o Systems Approaches The laboratories which are automating today are taking four systems approaches. 1. 1 (one) instrument - very small CPU - 1 (one) researcher 4K-8K DVM·I CPU J.i.nstrument Paper Tape I/O I ( Largely in basic research environment) Considerations Programming in rnachine language No growth system Unsupported Low initial investment Dedicated system 2. Multiple instruments of same type - small CPU - 1 supervisor Card or Paper Tape I/O Instruments ~--I ------+ I Ana~~Tg I MPX -lADe I -- r---,-------- 'm' typewriters r----'---- CPU * I *(1130 or 1800) ~ (Largely in QC lab environment) Considerations Easily customized front end lOW ClJu usage factor fixed programs, low demand difficult to add different instrumen.t on CPU fixed time slices in data acquisition mode easily justified easy to support under a TSX 0 - 10 - o 3. Multiple instruments of different types - small CPU - many different users Instruments Analog MPX """"'" ADC Channel I bigital MPX - Card I/O I ~agnetic Tape~ CP~ 1Disk) Ix-Y Plotter I I CRT Instruments *(1130 or 1800) Configuration for multi- purpose laboratory facility '0 Considerations Capable of satisfying many different users on a demand response basis Possible to dynamically adapt to experiments High initial cost More sophisticated programming required Remote link to 360 Capable of more than data acquisition tasks o 314 - _·····u ._-. ·····"··~·~~·1····\- ·j-"· .. T......ltt'· ..•..•• , ."..• ,... ,m '1 1 - 11 - 4. o Total integrated laboratory information system Time Sharing Terminals Data Cells Insts IDigital MPXI I I Insts. Analog MPX ~ slow speed expo up to 50K accrued data rates ADC Small Scale CPU* ( J S/360 - 50 - 75 ~I *(1800 1130) 1 Disk Files CRT Medium. Scale CPU (S/360-44) ADC 0' Analog MPX ( ith speed experiments up to 500K words, accured data rates) For large laboratory / corporate complex CONSIDERATIONS Total approach Programming requirements are complex Capable of widest range of laboratory applications Price is high unless remote S/360 is time shared Fast turn around time Offers large CPU for total problem solution o I - 12 - o Modes of Systern Operation Each different type of laboratory could conceivably write its OiJJIl unique monitor system to fit the various levels of instrument usage which is conducted there. The ~ive levels of activity found in typical laboratories is shown in Table I. Relevance of 1800 & 1130 The ability of the 1130 and 1800 to satisfy the demands of the LAB System applications can be summarized as follows: 1130 Hardware: The OEM and SAC channels on the 1130 allow this machine to accept an analog or digital I/O (instrument based) front end. At least two manufacturers have announced A/D converters which can tie to the 1130. o Software: No IBM TSX monitor exists for the 1130. However, it is known that at least three users are writing I/O subroutines to support an ADC front end. It is also known that two 1130!s are tied to x-ray and neutron analyzers in a closed loop fashion under some monitor system. 1800 Hardware: The I/O flexibility of the 1800 makes it an ideal growth system for laboratory automation programs. The newly announced digital multiplexor R~ allows data to stream directly into assigned core memory locations on a demand reponse basis at data rates of 50K words/second. Thus each experimentalist will think he has a computer always available to him during his asynchronous method of operation. Software: Up to 50 chromatographs at one user!s laboratory are no\v operating under the 1800' s TSX. The GCs are connected to the 1800 via the 1894 System Engineering L...L~l.B special automatic gain change A.DC front end. o - 13 - o Laboratory Automation in IBM IBM has now in progress at its own technical centers a number of laboratory automation programs in support of its own research requirements. An 1800 at the Thomas J. Watson Research Center is tied to an x-ray diffractometer in a closed loop fashion. In addition, a plate film reader is also connected. At IBM's San Jose Research facility an Electron Paramagnetic Resonance Spectrometer is tied to an 180:J also in a closed loop mode. In both cases, the 1800's are controlling :he experiment. Both facilities plan the attachment of additional instr G.Jnents in the future. These IBM research laboratory automation efforts have generated two differing operating systems approaches to facilitate the interaction between multiple different instruments and the 1800" The main features of these operating systems is a so called It Lab Director Program lt w}iich satisfies the demands of slow response analytical instrurnents in the basic research environment. These LAB directors are written to allov! the computer to respond to the various tasks associated with each type of instrument in an efficient manner; i. e., not under complete TSX control. So long as no interrupts arise, the LAB director allows the 1800 to handle multiple different instruments with relative ease. Modes of operation under the LAB directors are as shown in the following diagram. o 317 1 Summary 'c'. jjI I In summary, one finds the researcher or other lab personnel in the I process of modifying the existing TSX for the 1800 to adapt it to his particular laboratory needs. Type III application programs for the gas chromatograph, mass spectrometer, and Instron tensile strength tester have been written by IBM and run under TSX. A plea is made to COMMON members to put in PID their instrument oriented application programs. I 1 I C! I I 1 1 Table I PILOT PLANT OPERATION QU.l\LITY CONTROL Basic operational philosophy of online computer frequent changes in a large math model prograui - low batch demands infrequent changes frequent changes to program, com- in small puter dedicated ... programs no background infrequent tfrequent changes in changes in ~rograms associated analysis routines, vli th wide variety of frequent r.oll in & experiments 0 out of analytical subroutines ~ Instrument Characteristics Slow response, wide variety of II process II instruments plus few analyzers slow response, multiple instruments of one or two types wide response range, mainly slow. Generally one instrument type to satisfy slow response insts., are gener al wide variety of analytical insts. General philosophy of system operation to get the most out of the pilot plants performance to get the most out of the insts. with as few technicians as possible to recognize to get the most to get the most out faults in products out of instruments out of researcher final assembles & components as soon as possiblE Turn Around Requirements Seconds Minutes Seconds to Hours Computer Tasks data acquisition optimization Monitor Characteristics Instrument Usage Factor COMPONENT TESTING MATERIALS ANALYSIS BASIC tRESEARCH wide range of inst. response + wide variety of instrumen1 Minutes ~illiseconds ~econds data acquis. data acquisition performance limi t checking report generation summary report generation plotting data acquisition data cleanup table look up report generation data acquisition klata analysis data storage & fretrieval experiment control none - process demands will use computer scan instrument at fixed time interval - no interrupts scan instruments at fixed time intervals - rare interrupts scan instruments kiemand response at fixed time fruode necessary ... interval when no time for monitor overhead CPU is interrupted 100% 85-90% 100% 50-60% 10-15% GENERAL OPERATIONAL CHARACTERISTICS OF LABORATORY O'PERATION 0 0 0 to :1 SESSION NUMBER F.l.6 SPEAKERS LAURA AUSTIN DISCUSSION A CALL WAS ISSUED FOR PROGRAM CHAIRMAN AND LOCAL ARRONGEMENTS CHAIRMAN. BOTH WERE LOCATED FOR THE PHILADELPHIA MEETING FOR SEPTEMBER, 1968. WE STILL NEED BOTH FOR CHICAGO IN APRIL, 1968. FUTURE SITES WERE LISTED AND DISCUSSION WAS HELD REGARDING CONTENT AND FORMAT OF MEETINGS. I j1 C t I 11 40/ II wt'¥tt:!:r! tl'tt'rrm'MYrT :-nne-nnpnrr o SESSlnf\1 NUt-ARFR F.l.7 SPEAKERS DANIFL J. LAMPONE en L Af\I n f\1 A 1 A 2 0 en MPIJ T E R PRn GRAM F n R A. c. c: IRe U I T A[\1 ALY SIS I J TIL I Z I [\1 G T R Af\1 SIS Tn R Y PAR AI'" F T F REO lJ I \I ALE N T CIRCUIT MnnFLlf\l(; TFCH[\IIOUES E 0 M\1 f\1 n F. o W&22&;;;ua tt.MWi4; I ¢! t ffiJ$, #4T¥4#¢ ,44 - .... 4$ 10 August 28, 1967 o A 1620 COMPUTER PROGRAM FOR A.C. CIRCUIT ANALYSIS UTILIZmG TRANSISTOR ny" PARAMETER EQUIVALENT CIRCUIT MODELDfG TECHlIQUES by Daniel J. Lampone and Edmund E. Colan o ~ral ~~ Sylvania Electronic Systems, Sylvania Electric Products Inc. Williamsville, B.Y. 14221 I o I. I I i.i:tti::i'HTtrtWWeruw::nr' o TITLE: A 1620 Computer Program for A. C. :ircuit Analysis Utilizing Transistor 'ty" Parameter Equivalent Circuit Modeling Techniques Authors: Daniel J. Lampont:::, Sr. Engineer Edmund E. Colan, Research Engineer Sylvania Electronic Systems-Centra.1 Wehrle Drive and Cayuga Road Williamsville, New York 14221 I. INTRODUCTIO~ This paper presents a simple but accurate method of obtaining circuit A. C. analysis by use of the IBM 1620 computer. gram utilizes the transiator in its '~" The unique feature in this pro- parameter equivalent circuit and some circuit transformation techniques to allow insertion of program input information in a normal topological manner. The need for the use of "ytt parameter representation became apparent when problems were encountered using a predecessor program employing mesh current analysis and the transistor "h tl parameter model for o high frequency problems. High frequency representation of the uh" parameter model utilizing discrete components for the complex quantities created problems in circuits involving tuned amplifiers. Details of this will be presented later. Another reason for resorting to the "Y" nodal analysis was that most vendor's infonnation specify tty" parameters for high frequency transistors. In the mesh current method, inaccuracies resulted when converting "y" parameters to "h" parameters since conversion formulae were approximate. Before getting into an actual circuit solution, let us quickly illustrate the basic tty" model and sample nodal setup. shows the basic four-terminal tty" parameter equivalent circuit. Figure 1 The use of the "Y" parameter equivalent circuit is essential in nodal circuit analySis since units of current must be maintained, by matrix algebra. ~th the solution of nodal voltages being the outcome This is illustrated by reference to the example passive circuit and nodal equations shown in Figure 2. o -1- 404 U MiMI' "d ;, (I Q. o Ii., + ----- ~ ~ Lf~ V·IJ (''1'/ I ) ~trVO Y1l) 10 + ~ 'to Vo (Yzz) ~ 0 FIC,URE o R, E2 VV\,'\,..-.-_ + e , C, E3 I CI EQUATIONS: EI (ZG, + E, (- c;.) t uJ Cl) + E2. (- + E2(bl+GL+i wC d Gtd + E3 (0) ::: e c;, + E3 (-1 we,) :: 0 (} FI(;URE 2. -2- 4o~ o The Matrix solution is [EO] [Y] = [rJwhe:re the coefficient matrix is made up of admittances rather than resistances in a mesh curr$nt solution. The right side of the t!quation is current sources associated with respective nodes. II.. A. C. EQUIVALENT CIRCUIT SETUP This disoussion will be centered around a sample RF amplifier circuit shown in Figure 3. ly. is. The cireui t has been simplified for purposes of the aaa~ Decoupling networks) d-c biasing components, &.no. AGC circul try -were re- moved since they have no effect in the a-c analysis. The circuit consists of cascaded pairs of transistors and four tuned circuits (varactor tuned). shows the a-c equivalent circuit with all circuit components and t~ Figure 4 pa~meters modi- fied by "turns-ratio squared" factors to allow tor elimination of circuit ideal transformers. c It would be best to interject at this time how to arrive at the a-c equivalent circuit since the success of the solution hinges greatly on the correct methods used at this point in the analysis. It was necessary to do some hand cal- culations because of the limited capacity of the 1620 computer or else we would be into the category of a highly complicated a-c anal~sis used in the more pub- licized and more automated programs allowed by the larger computers. Certain steps must be followed in setting up the a-c equivalent network in order to show how to arrive at Figure 4. First, starting with the original Circuit, substitute the equivalent circuit of the transformers. Most methods for these were taken from "Communica.tion Networks", Volume 1, by Guillemin. The obvious intentions were to arrive at an equivalent tiT-network" and the following example and Figure 4A shows the steps taken. o -3- ~1o~ Q42.~3904 r(. • ! • 0 1 RF " INPUT i f\I' I fi I: FIGURE 3 .~ R.F AMPLIFIER. ~ • .J:"" • o c c ~ft I I (I) CI) .. 284 I ~ ,- Z ® .089 O-~-- '1· QS's) z I - .03b4 r---T"~ ~ so eve ..=(" ! t~lT L- 4 .Ot f 2\30 .0301 • • • 32. Y22E ff _ ----·(.313)Z • • .. ,. .0092.1 -.003"4 14.7 .0316 _ _ (.0154)l .154 @ .0141 .00491 @ .0487 @l~ (j)e. 1- , ~1---:368Z Z3t .0034 __ _ -.G02ab@) P I. 1 .0090S 3.2. 8.06 YrIB t .00334 1.785 YZ 1V7 a, ~. I I a.t.' I ~ ':) I Q.., a-Z. :. 2. Q2.. I ;1 a.: u..i :: 1 I -3'':\= 3.2. '''; I \ .0154- :; I V1 I Y,2. E :; (C '(ZIE = (5' -1 .\ Z.) +i ,'- ) )( \ 0 - VI~ ~5 Eo:: .bO' i = (~4. 5' - 43) )( 10- 3 MHO S 'fIle::. (-:27 -1,51) Y" 3 MHDS -1 13 ) T'ZlE :; (.OlS"t 1,4) 8.0~ 2N3904 AT 56 MHz. 2N 3933 AT 56 MHz. '(II E :: (I. I + I a.3 - .'394' 1.42. '.2'2.'2. = FIGURE 4 -_._---A.C. EQUIVALE.NT (,IRCUIT e I YZ.I 6 :: (- 6,0 +i I2.LB : (.2.7 + 1,84) 49 ) ~o I t+ 8 J... . ....L • .L- \ a2. - .394' \.42. :: 1.785 IB.4 ·-1450 581 -rf .OO;~3 ..L . .00286 I , I, o ---II"- bll = Rl + jYlL l b22 = R2 + j wL 2 b12 = JwM = b2 1 Defining the Mutual Inductance as Negative Numerically (Arbitrary; for convenience only) we can say: bllll - b12 1 2 = El -b2lI l + b 22 12 = E2 One type of network which can be made equivalent to the transformer is shown below. c It consists of the T-network and an ideal transformer. Various special forms result by giving the ratio "at! of the ideal transformer particular values. ZB Gt. o V ~J~ ~ O~------~--------~ -- .----.... I l. lDEAl TRANSFORMER Figure 4A -6- c i II o }t'or the T-structure alone: ZcI2 (ZA + Zc)I 1 - -a.- or: (ZA + Zc) 11 Zc th~s Zc - -;- I2 ::: E 1 ZB + Zc - ;- 11 + If = E1 a2 12 :: E2 network with the ideal transformer is to be identical in behavior to the original transformer in Figure 4A, then, Zc a =b12 ZA + Zc = bll CI which gives = Rl + jwLl - j:waM ZA = bll - ab12 ZB = a 2b 22 ::: a 2 (R2 + JWL2 ) - jwaM - ab12 Zc ::: ab12 == .1wa.M Therefore we have the circuit in Figure 4B: R, L, o------'V'Nv---~-- 2- -~M a. Rz. 0--------.-----..".-.----..,,---"---.. . --.-.."----..- " - - . - - - · o -CLM L - -_ _ _ _~'VV11fV----J Figure 4B Q IDEAL XFORMER .'{ -1)0 - One must keep in mind that the transformer conversions need only be d.erived once and retained for reference in anticipation of future problems Involving transformers. o Initial preparation of these equivalent networks of transformers is painstaking but nevertheless valuable. By assigning any value to the ratio a, we immediately have the lmpedances in the T-structure to be used in conjunction with an ideal transformer having this ratio in order to replace the given transformer. A special case: when we make a = I the ideal transformer vanishes (this is the case for a 1:1 transformer). Then we have: ZA ::: bl l b12 ZB :::: b22 b12 Zc =b12 c and this is: ZA ::: RI + Jw(LI - M) ZB = R2 Zc = + jw(L2 - M) JwM This result is illustrated in Figure 4c as follows: (LZ- M) Rz. Ow:. I o---------------~!-----------------~o Figure 4c -8- 411 o Our original circuit also showed step-down and step-up auto-transformers. For purposes of brevity, the solution for the equivalent circuit of the autotransformer follows without detailed discussion 1n order to approach the next point. R., L, ---... 1z. 0 Rz. E2. L, bl l = Rl + R2 + jw(L1 + L2 + 2M) jwL2 b 22 = R2 + b12 = b21 = R2 + jw(L2 + M) II --.- 1.. A l B I, ----- a... ~------~Iv\~--'---~AAAr----------- o a... -9- o per above: = b a = b 12 22 = b + jwL 2 = R 21 2 = R 2 + j w( L 2 +M) Substituting: Zc = a [R2 + jw(L2 +M~ ZA :: R1 + R2 + jw(L1 + L2 + 2M) - a. ~2 + jw(L2 +M~ ~ = a 2 (F2 MIT + j'wL2 ) - a [R2 + ,jw( L2 + Impedances are: Zc = aR2 + a.L 2 + aM ZA = R1 ZB = (1-a)R 2 + L1 + (1-a)L2 + (2-a)M 2 (a 2 -a)R 2 + (a -a)L2 - aM + which yields the following equivalent circuit shown in Figure 4D: RI (I-a.)r<.z. L, (I-Cl)LZ (z.-a..)tv1 2 . (a.,2-a) Rz. (Cl -a.) LZ 0----1\IV'v---'WVV- -a.W1 (a..) r- j 0 ~: ~ Nz. 1DEAL TRANSFORMER Figure 4n Step-Down Autotra.nsformer -10- 4)3 0 o As you can see, each equivalent circuit of the transformers includes an ideal transformer. ryrh~ next step is to eliminate the idea.l transfonners in order to avoid discontinuities in the circuit solution. ideal tran8~ormers In order to eliminate all components succeedins an ideal transformer must have im- pedances modified by the "turns-ratto-squared" factor [=~] 2. Now, looking back at Figure 4, the circuit was split up at four different points where the ideal transformers should have existed. For this circuit the following turns-ratios existed for the four transformers: 81 = .394 82 = 1.42 a3 = .222 84 = 4.88 As shown on Figure 4, the first section impedences succeeding the first ideal transformer get multiplied and so on. o section. by .3942 = .155, the follOwing section by ~ 1.42)2( .155~ Notice, the multiplication factors become cumulative for section after This is an absolute necessity since the source generator must see all components in the proper perspective. Conversely, it becomes necessary to modify the t'Yil parameters of the transistors (admittances) by multiplying Yll and Y22 by 1/82 , Y2lv l and Y12V2 by l/a. This can be understood easier by observing the following calculations. For the 2N3933 of the first cascoded pair: 1 :: -1 - = 3.2 .313 Now: Y1lE = (l.1xlO- 3 + J 4.2xlO- 3)3.2 :: 3.52xlO- 3 + j l3.42xlO- 3 Y12E :: (OxlO- 3 - j.16xlO- 3)1.785 = 0 - j.285 x 10- 3 o Y2lE Y22E = (5lxlO- 3 = (.015xlO- 3 J 13xlO- 3 )1.785 = 9lxlO- 3 - j 23.2xlO- 3 + j.4xlO- 3 ) 3.2 = .048xlO- 3 + j l.28xlO- 3• -11- I' ,I o The same multiplication factors apply to the common base 2N3904 of the first ca.scoded pair. For the second cascoded pair, the same process is carried out, only now the multiplication fa.ctors obviously become: :: 1 2 a 1 a-2 2 a 32 = 1 .• 394 x 1 x l : : 8.06 1.42 .222 65 We now arrive at what looks like Figure 4, the a-c equivalent circuit. The foregoing set-up seems a little messy (yet straightforward) but after experience with a couple of circuits, adeptness, efficiency and accuracy are very much enhanced. III. PROBLEM AREAS Minor problems existed and we will now.discuss them. Originally, it was intended to solve this circuit by the loop (or mesh) current method using the "hybrid" equivalent network for the transistor. The "hybrid" equivalent network is show in Figure 5 with a few rules governing its insertion into the circuit, This "h" equivalent was derived from information contained in the text "Transistor Circuit Analysis and Design" by F.C. Fitchen. The information in Figure 5 is only included as extraneous information to serve as a guide in cases where choice is made to apply a mesh current solution, for example, low frequency analog circuits. As I previously mentioned, most vendor's information gives "yu parameters for high frequency transistors, and these are given in complex quantities. Con- verting to "h" parameters is necessary to perform mesh current analysis and these obviously become complex. Utilizing discrete components for the complex quantities 0 -12- 1 CO LLE C. TO R. EMITTE.R Circuit Insertion Rules 1_ hrb-v cb is always same as,v 2. Polarity of hfb .ib must always be related to vi as follows: either, hob both must be positive at collector and ba.se (terminals) respect1v.ely i in sign. (as shown in sketch), or both nega.tive at these terminals_ Base current (i b ) must·be consistent with vivcb is interpreted as voltage at collector relative to base. Polarity hfb of the voltage generator ( - • i b ) is indicated (as determined in 2). hob Voltage drop and polarity in resistor l+hfb is determined by direction hob of current flow assumed for i c • 4. When inserting parameter data into equations, dontt forget that h fb is negative. 5. The generators will take on polarities with respect to loop currents according to the following manner: + - -......- ... o Loop current Loop current Figure 5 -13- created problems cities. ~lere tuned circuits could interact with the transistor capa- Reference to the grounded base configuration in Figure 6 will illustrate o this. EM\TTER. COLLEC.TOR L2. Figure 6 The capacitor C1 and resistor Rl are the components resulting from the conversion. During compnter solution, Cl' which is small, resonated with the combination of C2 and L2e C2 and L2 formed a high value of XL rather than a high resistive value for the tuned circuit. Consequently, while attempting to tune a circuit for maximum output voltage, the solution proceeded to find the peak series resonant point rather than the antiresonant point which is desired. The series re- sonant point CRuses a much higher output 'Volta.ge, Eo' than the parallel peak. (This can be demonstrated mathematically). This is a false resonant condition, even though Eo is higher, because of interaction 'oetween transistor para.meters and actual external tank eircui tS e rPhe series resonant peak is close to the antiresonant peak and the skirts of the response curve blanket any identification of the actual circuit parallel resonant condition. Conversely, a solution for antiresonance by searching for the minimum loop current does not succeed because C1 eliminates the occurrence of the current "dip". -14- 4)~ c Attempts to utilize a current generator in the h-parameter transistor model with paralleled ~2 components were not successful. Introduction of the current generator - or any equivalent alteratiQns -, could not be made co. .tible with the loop analysis. Therefore, without the success of using the "htt equiva.lent loop (or mesh) current ana.1ysis, we proceeded to investigate the tty" equivalent nodal analysis. Some nodal analysis problems also occurred but were "ironed" out after some proper manipulation. It so happened that with the circuit previously shown containing two (2) pairs of cascoded transistors, it was found that the input admittance of the second transistor in the pair (the grolmded base) loaded down the groilllded emitter transistor output so tha.t a loss resulted rather than aga.in across the pair. This problem was circumvented by combining the transistor data so that two cascaded transistors are combined into one single model to represent the cascoded pair. The combined admittance matrix takes on the following form: Y yl = Yl2B 12E.Y2iB Yo where Yo = Y22B - Y2lB Y12B Y22E +y llB The new combined fly" model of' a. common emitter - common hase pair has its elements varied by the a.bove formulae (the y lll~ and y 2ll~ remained unchanged ohviously). Another small problem that occurred in the process of detennining the y-parameters for a cascoded pair is where the grounded emitter transistor has a degenerating o emitter resistor. shown The emitter resistor is combined by matrix manipulation as in Figure '7. -15- o c A FIGURE 7 -16...., .. " l,1 ( . . ~. . . ~ o A short computer program was written to accomplish what is shown in Figure 7. The y- parameter data initially used was the transistor data modified by the "turns-ratio squared" factors to fit the A.C. equivalent circuit with ideal transformers removed o This modified data was then combined with the emitter re- sistor value to obtain the resultant matrix for each cascoded pair. however, yield.ed improper pa.rameter data. This method, Oddly enough, this particular problem was rectified by reversing the order of solution. By first combining the basic transistor data with the emitter resistor and then modifying by the "turns-ratio squared" factors, the proper data. finally resulted for the ca.scoded pair. By combining the transistor data. for each cas coded pa.ir, the circuit reduces to a 12 node problem. Figure 8 shows the new revised. areas containing the resultant combined "Y" parameters of each cascoded pair. The emitter re- sistors have now been combined into the new "yU parameters representing each c cascoded pair. r.J • COMPUTER PROGRAM The final category that will be discussed is the actual computer input data set-up. With most people this should be elementary since matrix algebra determines the final solution and a little knowledge of circuit analYSis can aid the programmer in inputing the information. The technical portion that I have previously discussed would probably need the assistance of an engineer to properly set-up the a-c equivalent circuit. But again, practice with a few circuits would lead to more familiarity and shorter turn-around time. An explanation of presenting the input information follows. Byre- ferring to Figure 9 and Figure 4 with the combined cascode pair configuration of Figure 8, the input information is easily understandable. o -17- 1 ~ PAIR o .02.0 ,0521. WAS® WAS@ ® ® -.0174 a...-..,f\FV'ln--.I WAS® 14.7 0)0 .031' .0117 -.00364 -........ (-.1'3+11.15) 10- 3 • [( 88.2 - i 3 2..3) 10-3 ] Vs 2. ~ PAIR WAS 0.) (j) WAS WAS@ .0092.1 .0034 ~ -,00701 (68.8 +i l.7B) 10- ® ® WAS .,54 @, @) ~----~----~----~. -,002.03 - ,DOlE> @ (-3.3 + 3 FIGURE i 23.3) '0- 3 8 c -18- 420 o Read cards order: 1st card: N and Frequency where N = number of nodes 2nd set of cards: II, JJ, R, XL, C, rTYP (Impedance Branches On~y) where: II = matrix row element (node number) JJ = matrix column element (node number) R, XL, C = resistance in ohms, inductance in henries, capacitance in farads associated with II, JJ impedance branch. =0 ITYP if symmetrical, 1 if asymmetrical All impedance branches are symmetrical. The YV (current generators) branches are sometimes asymmetrical and will be assigned as such when we present the admittance branches later. c By looking at Figure 9 and Figure 4, three branches are common to node 1 and must be listed separately in the 1-1 position. The program combines these in the final 1-1 position in the coefficient matrix. A branch need not be repeated when symmetrical and off-diagonal (for instance the 1-2 common branch) i. e., the program makes A (II, JJ) = A ( JJ, II), however, the off-diagonal elements should be assigned a minus (-) sign. Also, the program converts all these impedance entries to admittances 1n complex notation to keep the matrix solution in proper units. Notice II cannot be larger than JJ. 3rd set of cards: Follow these cards with a blank card. 4th set of cards: II, JJ, YR, YI, rrYP of Y parameters (admittances) where: II = matrix row element JJ = matrix column element YR o = real part of Y parameter YI = imaginary part of Y parameter ITYP = a if symmetrical, 1 if asymmetrical INPUT Tt~~O - I). ZZJOB 5 ZZXEQSIMPAD1 12 1 .284 -..:::~ 28£1 .284 2 .189 3 3 - . 1 ~9 -.02q~ ~-O6 .189 .0293 E-06 3 -.0034 .003A -.0034 .123 .0521 -.0521 3 2 2 O. --------3--· ..-3· "-"'-0.3 3 4 4 4 4 4 4 4 ,,_.' '-.- '---'-'4"-'---5 o. 5 6 6 7 5 6 7 7 .0521 14. 7 316 -14.'316 1L'l.'316 7 7 .00905 ---....- ... - --.-.- ---""'--7'---7"-' _.--- cY02- 2-" ~- 7 8 - .. 0022 8 8 • 0022 8 8 O. 9 9 9 10 10 10 10 11 11 10 11 11 11 11 12 lC . -r'c" fT f\) ;- 12 12 1212 o I ?~ O. --;048 7 -.C487 .0437 18.4 5 3.4 6 ~.1.? .. 13.8 .206 o o 153. -1t::;3. 153. 2130. 85.0 -85.0 85.0 n E-12 E-12 TUNE ~-12 E~12 'cf"" E-12 E-12 E-12 ~} TUNE o o O. O. ··0"·--------·--..·---------------···----·..-· d. o. o o O. 0. a. o. '-::::-'--.--.--~----~.-.-~--.----- E~06- v. .. ... ~ ~-.- o. O. 1040. E-12 O. o. o--~ . 1500. o. E-06 E-06 E-06 E-06 E-86 E-Q6 E-06 O. o. o. O. o. o. o. O. E-03 E-06 o 6 o. o. .0141 5 o. O. O. O. O. .00205 -.Q0205 .00205 .00286 .01404 -.01404 .01404 E-12 O. O. .00123 E-06 -.00123 E-06 0. .0141 -.0141 5' E-06 E-06 E-06 E"-06 E-06 .00581 F-06 -.00581 E-06 .00581 E-06 .0646 E-06 .0026 E-06 .. -.0026 E-06 .0026 E-06 .00806 E-06 -.00806 E-06 .00806 E-06 .00697 E-06 -.bb 12'3 .154 -.154 - ---------Tb'-·fO ---- .. - .154 r 4. 2 2 o o O. 2 2 "" )' '.J o. o. .0589 -.0589 .0589 .0301 .0293 1 1----2"-- < NODES 3 56.E+C6 50. o. I RF Atv'lPLI FIER- E-03 E::-06 E-12 o o a ..--;:;-_. - o o o o o ..-. --..·--0" .... 0 .- ----·-~-.---_- ____I_". TUNE.. TUNE:. o o o o ._- ". ". _..... -----6---.... _. -o o o 0 F I C-.UR. E. PAC.....c I ~ .. ---".- -,.-~----- ~ q c o -0 0 Cl - -0 i • Ole n f' 0 ()\ OJ ~ (10 (J 0 -,I _. C 0 I I \OJ\() \0 :\l: \f.j \() '4..i '0 (,!( C () c' C I ii' I I I 1J' :IJ. 11. LI.J lL ll.i ole ("') i ('"; {\j 1:('") {\: ,{\j .... ill .;t t~~ ;(; II: \[) q' 0 L i (I. C U.i 0 ~'j (, ~ : ( (' J (I! -:j () C 0 C - 0 • (.) CJ C • C I..... k (. ~.:; • tJ • • • • • i • • • • c. cole c e o 0 I ! l I I 0 t c: ;. (; ~ (~i lfi iii t ! I Li I 11.1 ILl ILl I ... 0 . If, 0:. I I\() \(.) :\() \() HL! I,; III III co co - I I I i o 0:0 0 ( ' ) 0 0 I clo (1:0 C 0 I -I • • - - CICOOCO I ~ Q c I 1 W 0 I (\J .... '.......... I I I I Ii. I LiJ W hi llJ tLl ltl, ")< I. C _; • • • • , \:) ~ '\( I :t I :<. <:I' , !LJ ..;;;t • .;j O. "-l 0' ! :\(' ., a (I.! Q' - {\ • (I. , tre.I.:c :IJ ( q • (, I i · I <\1 •• 'I U ..... , - .-' (\ cI (l ("", c·l/ ...... :x: f'.1 f'.' f'. f'.1 .. (\ ~.(\! ,. I I .... ~I 1-' ("", :t- r)p {\,: ~j~ HI(\! • t-• ..... (Y; c :> C c> (', -Ie c' • • r) {\i l'l ! • .... it ..... • I .... C' c\.) I ..... Q: ,e' ...... M \(... r-- I • <::It- . ' . - . I- C• I I I e <:l" ~,; 1"- .... ' ,.;;:I - .... < ~ ... ........., ~. .......... (\; (\ !""" (\) ...... " I c: _. (Y'; (\j ;.-. (\j (\~ • (\! ( - , ... - ,.... .... -:- c' 0 c c c ..... ...... - Il) (\ '" r--. I ;' 1 <...... l.l I - (\,1 , - I: 11,1 I • :1'" ,..' ([',e(\ (,( _ ..... 'c fa Ie - Ill':' i -'1.1'- F'" ..... • <:l I'r-- cr, t \{' - F" - r. 1"-!I 'e ! ! • U,:Ul IJ.: 1 1 It (1';' ! I (', ! i 1 (Y'l !(' ("') r'l (') \(") f') :M ('~ ('" (") i(') f"; iM C' :e 0 io 0 Ie 0 0 c, C I i ; lC (\ " I ! : l f C'c, a' e e (\ U (\ Il .;;:I Q c c, 1 (') i(1'i r, '("'~ t I (Y (") (y,! (') (Y'~ ri I('~ <. ( ( ( c' 0 C c' I 1 I; I • I ., 1 I III I I I J I I I I 1 1 I I I I f t l1i IIi llJ lLl 1.1' ti' lJ IJ lJ I.JJ lJ! lJ.i 1.1' lJ.,' II.!, tL ,lll I)! il1.i IJ Ill' Il.' ill. Iii 'lli lI.1LL~ III :ll,' ll.' l.J IJ.' C''' C C 1''" .-t j...... t-4 -(\! r, M f"', • o SFSSIOf'.1 NUMRER F.2.2 SPEAKERS HARRY CADOW ON 360 OPERATOR TRAINING. GARTH GROFT nN OPEN SHOP OPERATION IN AN FNGINEERING DEPARTMENT. C~I o i I I j O· o OBTAINING MAXIMUM RESULTS USING A COMPUTER FOR ENGINEERING DESIGN by Garth E. Groft York Division, Borg-Warner Corporation ABSTRACT For more than five years a major manufacturer of refr i gerat i on and air-conditioning equipment has made comprehensive use of an electronic computer as an engineering tool. Its use is directed toward increasing the product i v i ty of the des i gn and test eng i neers, there by reduc i ng the cost of engineering. CI It is well known that a substantial part of engineering is involved with tedious and repetitive calculations. Much of this work can be done more quickly and more accurately by a computer. Both the quanti ty and qua Ii ty of product des i gn and .deve lopment are enhanced as faster, more accurate, solutions al low more time to explore a wider range of des i gn poss i b iii ties and to conduct more extens i ve i-est programs. The faci I ity is operated on an "open shop" basis whereby the engineers have direct 24 hour/day access to the computer and are encouraged to use it as freely as they do a sl ide rule. Courses are frequently given to train the engineers so that they themselves can program and operate the computer. To date, 94 engineers have completed the courses. This arrangement minimizes the number of steps in the communication chain, and has resu Ited ina most effecti ve use of the computer for des i gn and development work. This paper discusse~ in detal I the manner in which an "open shop" operation is achieving outstanding results. Page I of 6 o OBTAINING MAxIMUM RESULTS USING A COMPUTER FOR ENGINEERING DESIGN by Garth E. Groft ~ork Division, Borg-Warner Corporation For more than five years a major manufacturer of refrigeration and air conditioning equipment has made comprehensive use of an electronic computer as an engineering tool. Its use is directed toward increasing the productivity of the design and test engineers, thereby reducing the cost of engineering. PURPOSE OF THE ENGINEERING COMPUTER It is wei I known that a substantial part of engineering is involved with tedious and repetitive calculations. Much of this work can be done more quickly and more accurately by a computer. By using the computer, the engineer is no longer limited to approximations, oversimplified formulas, and short-cut methods that have been in wide use for many years. The computer can be programmed to include equations in their entirety and to consider factors that previously had to be ignored. The computer provides more reliable, more consistent results. The engineer is assured that a computer program wi I I repeatedly handle data in precisely the same manner - that is to say, al I calculations are performed the same way each time the computer is used. Hence al I data has a common basis of analysis. He is further assured that the computer is not subject to errors caused by distractions, nervous tension or fatigue. Both the quality and quantity of product design and development are enhanced, as faster, more accurate, more re I i ab Ie so Iut ions a I low more time to explore a wider range of design possibi lities and to conduct more extensive test programs. The computer has contributed significantly toward reducing the total design and development time cycle. The effectiveness of the computer in saving time is emphasized by the fact that the work being done by this installation is equivalent to an additional staff of more than 40 engineers using sli,de rules and desk calculators. Page 2 of 6 c o GROWTH OF THE FACILITY The first engineering computer faci I ity was an IBM 1620 Model I Paper Tape System, instal led in December 1961. Acceptance of the computer as an integral part of engineering was exceptionally favorable. This was due largely to the extensive personnel conditioning, training, programming and general preparations which took place before the equipment arrived. The demand for the computer quickly exceeded expectations as wei I as its capacity, necessitating upgrading just a year later, to a faster, more efficient card system. The core storage was also increased from 20,000 to 40,000 6-bit digits. This provided sufficient thruput unti I early 1966. Additional capabi I ities were then provided by converting to a 1620 Model II having twice the speed of the Model I. This system provided more effective operation and permitted a higher level of programming capabi lity. A later appraisal of future engineering computing needs and proposed improvement in test data collection equipment and techniques dictated the further change to an IBM 1800 Data Acquisition and Control System. This was instal led in Apri I, 1967. The 1800 is ideally suited to engineering use. It can execute both process contra I . and non-process contro I programs concurrent Iy . Batch processing and time sharing at the computer console or from remote terminals is provided by the system. The system software and most of our program library reside on two disk packs of 512,000 words ~ach. A core storage of 16384 16-bit words was found to be equivalent to some 50-60,000 digits. We have also determined that for our work the 1800 is 2-1/2 to 3 times faster than the equipment it replaced, or about 15 times faster than the original tape system. COMPUTER TRAINING COURSE Frequent courses are given to train engineers so that they themselves can program and operate the computer. These 50 hour courses are divided into two-hour sessions, so as to minimize interruption of the eng i neer 's regu·1 ar work. The first part of the course presents 1800 FORTRAN. Because FORTRAN is machine independent, the engineer can be problemoriented, i.e., he can direct his attention toward the method of solving the problem itself. The FORTRAN language is quickly learned and a program can be written with relative ease. Examples of FORTRAN statements from actual programs are used in these sessions to i Ilustrate the flexibi I ity and practical ity of the FORTRAN language. In the interest of saving training time and avoiding confusion, the design and internal workings of the computer are pointedly avoided. o Page 3 of 6 431 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _....'....."..... ',,'' ' '""'' ' ' ,.'_.'•..'""""...""'","","""'"."."""',...,'_".."""' .... """"',""==",..''''"'''w=n'''''''' .... 'j"''=''i'="" .. '.""-""",,..........""........,..... The second phase of the course concerns the three major areas of difficulty which tend to discourage our engineers from writing computer programs: ,,'.,= .....'""""._"f.. ~~_ o I). Methods for representing tabular or graphical data in a computer program, 2) Techniques for solving trial and error problems, and 3) Means for referencing properties of refrigerants ann other fluids. Curve fitting and surface fitting techniques are presented as a likely method for representing graphs and tabular data which form smooth curves. The applications of table look-up procedures are reviewed. Norma I Iy th i s approach is not recommended as the equat ions resu It ing from curve, or surface fitting are easier to program, require less storage and generally provide faster, more accurate results. Techniques for solving trial and error problems are treated in detai I. The advantages and disadvantages of various methods are explored in detai I with actual programming examples. Sub-programs for the properties of commonly used refrigerants have been written from equations developed by a major manufacturer of refrigerants. These same equations generated the tabular refrigerant data frequently used in manual calculations. These properties can be referenced freely in any program and are as easy to use as sine, cosine, and square root determinations. Examples: = PfT (T1 ) Pressure of saturated I i qu id P1 Specific volume of saturated vapor Vl = VPTCP1,T1) Enthalpy of vapor Hl - HPT(P1,Tl) Enthalpy of vaporization HLAT1 Where T1 = Temperature in of P1 = Pressure in psia = HFGT(T1) The refrigerant properties include acoustic velocity,heat capacity at constant pressure and at constant volume; enthalpy and entropy of vaporization; specific volume, pressure, temperature, enthalpy, and entropy of the saturated liquid, and of the superheated and saturated vapor; liquid and vapor viscosity; and X and Y compressibi lity functiQns. Other properties wi I I ba addod to this set as they are needed. SubPage 4 of 6 43112. c programs for the properties of water, air, carbon dioxide, methane, ammonia, lithium bromide, chlorine, and other such fluids are also avai lable. During the third and final phase of the course the engineer programs several typical applications in class. This training is to prepare him for the ultimate objective of the course - to write a useful program himself and get actual results on the computer. Experience has shown that only by actually writing and running a computer program The does the engineer acquire good recal I of the course content. course throughout avoids the commonly encountered textbook approach. Instead, material, examples and illustrations gathered from everyday experience are used. The engineer continues to receive training on an individual ba~is each time he uses the computer faci I ity. He is given an Engineering Computer Guidebook, an in-house publ ication which provides detai led programming and operating information specifically designed to promote a greater degree of self-sufficiency and improve the overal I productivity of the engineer using the 1800 computer. To date, 94 engineers have completed the FORTRAN course and most of these are now making effective use of the computer. Our own Program Library has grown to 175 programs covering a broad range of applications. The major areas where the computer is uti lized are: I. Design 2. Data reduction/analysis 3. Performance ratings 4. Physical science 5. Mathematics, statistics and rei iabi I ity 6. Information processing and retrieval 7. Management science 8. Numerical paper tape control of machine tools OPEN SHOP OPERATION Before the initial computer instal la~ion, it was recognized that it is easier to train engineers to write their own programs than to fami I iarize a machine language oriented programmer with the broad aspects and fine variations of engineering design and development. o For this reason, ,the computer has always been used on a strictly "open shop" basis, whereby the engineers operate the computer and do most of their own programming. Direct 24 hour/day access to the computer is provided and they are encouraged to use it as freely as they do a sl ide rule. Computer oriented help is avai lable, however, for consultation and to assist in the more involved problems. Page 5 of 6 A magnetic type schedule board is used to reserve computer time. Permanent reservations are provided for certain test activities which go on around the clock. A I I other reservat i.ons are made as needed. Con f Ii cts in scheduling or other such difficulties are resolved by computer personne I. The keypunching of new programs and input data cards is done by a keypunch operator. The engineers, however, are trained to punch their own cards so that they are able to use the computer after hours without assistance. The "open shop" operation minimizes the" number of steps in the communications chain. The engineer does not have to explain his problem to a programmer who, no matter how intelligent, resourceful, and eager to help, rarely has as much knowledge and experience as an engineer in his own bai liwick. The problem of retrieving and relating al I pertinent information and ensuring that nothing is lost in the translation is eliminated when the engineer does his own programming. Whi Ie programs written by engineers may not always be as efficient as those created by programming specialists, the qualitative benefits of "open shop" programmi ng far outwe i gh the disadvantages of any s light I y 51 ower runn i ng times. Like any commercial product, a program is subject to occasional or frequent revision a~dictated by technological innovations and advances. The enginee.rwho does not write his own program frequently experiences difficulty and delays in keeping the program up to date. Furthermore, as the engineer operates the computer, he acquires valuable feedback regarding the effectiveness of his own program and can detect unsatisfactory program performance, implement necessary improvements, and prevent needless delays caused by incorrect input data. Moreover, hands-on experience contributes greatly toward bui Iding up the confidence of the engineer in uti lizing the computer faci I ities. It removes the mystery, awe, and fear often associated with computers. The engineer who uses the computer himself no longer feels that it is a gigantic brain with which he is i~ fierce competition. This attitude, although diminishing with each passing year, presented a real problem with early instal lations and is sti I I of consequence. Under "open shop" conditions, the engineer acquires a genuine appreciation for the computer and gradually realizes that, even though inanimate, it is a valuable partner in a closely knit engineering team. The "open shop" phi losophy coupled with "in-house" training has proven a most effective approach to computer usage in design and development work. It is undoubtedly the basic reason that this installation is achieving such outstanding results. G.E.G. 7/19/67 Page 6 of 6 o 1800 FORTRAN LANGUAGE REFERENCE iv1ANUAL MC CRACKEN SESSION # Or------1 INTRODUCTION TO FORTRAN CHAP. 1 , PAR. 1. 1 2 CONSTANTS, VARIABLES & EXPRE S S I 0 f\l S ( I f\! CLU0 I I\! G SUBSCRIPTED VARIABLES) 1.5, CHAP. 1 , PAR. 1.3 PROBe 1 7 CHAP. 5, PAR. 5.1, 5.2, S.5 PP. 1 - 5 , 18 ( 0 I MEN S I 0 f\.1 ) ARI THr·1 ETIC CHAP. 2, PROBe 1 - .3 CHAP. 5, PROBe 1 , 2, 3, 8, 9, 10 P. 6 (COL. 1 ) PP. 22 - 23 (FORTRAN .sUPPLIED SUBPROGRAHS) ... -.~ & 1.2 - - - - ---_..- STATE~~ENTS QUIZ #1 ON SESSIONS 1 (1/2 HOUR) - 19 - ... 3 - 3 - - - ..._--_. 4 CONTROL STAT EI'·, Ef\l TS CHAP. 3, PAR. 3.4 & 3.5 CHAP. 4, PROBe 1 - 13 P. 6 (COL. 2 ) - P. 7 (DO STAT Ef"1 Ef\! T ) P. 9 (PAUSE, STOP, E~·J D) 5 DO STAT E;·1 ENTS CHAP. 5, PAR. 5.3, PROBe 5, 6, 7, 11 CHAP. 6, PROBe 1 - 9 P. 7 (DO STAT E,. , Ef\lT ) P. 9 ( CO[\lT I j\.JlJ E ) - P. 7 (DO ST1"4 TEi,'l Ei\! T ) P. 9 ( CO i'lT I j\J UE ) - --'- - - - - - - - <' I DO STAT E~.'1 Ej\j TS I CHt\P. 6, PROBe 10, 13 - 17 ----r-. 7 REVIEH & QUIZ #2 Oi'l SESS IOi'IS 1 - 6 ( 1 HOUR) 8 DIS CUS S I,0 r,J OF QUIZ #2 I f\1 PUT I (J UTPUT STATE:' ~ MC 1800 FURTR/.,·! L/I;~GtJ:\(;f. REFERF.JJCF.-: i·~r\,\'IJ(\L CRACKE~! ---------------------0 il:-3 ON SESSIONS 8 ~UIZ 14 - 12 INPUT/OUTPUT,FOR~AT, S TAT EiiI Ef\.1 T F Uf\j CT ION S , SUB PROGRAf/,S (1-1/2 HOURS) ----- _._15 DISCUSSIOi\J OF 11~ 3 CASE STUDY 1 CASE STUDY 8 FLO\--! 01 AGRAi·j QUIZ CHAP. 9, tHAP. 9, ----- ---- PP. 62 PP. 73 - - -----+-------.-------... - 16 j·1 ETHODS 17 18 OF IT ERAT I 63 77 -.~.- . O~I _._..._--_ .. ...._-19 GE~·.)ERAL 01 S CUS S IOI\J - OF PROJECT o EVE LOP r··l Ef\1 T TO DATE 20 --y-_. . _ - COi:;PUTER o Ei'-'iO GEf\!ER/\ L S E S S IOi\1 > - - - _ .•- .._ - - - - - - - - _ . _ - - _ . _ . CASE STUDY 2 HOTOR E F F I C I E!\\ C Y CAL CU L A T I Oi\1 S 22 cnrAPUTER DEHO ':i I TH CASE STUDY 2 23 CHAP. CASE STUDY 4 TRAi\lSFER HEAT PROB. i _ ...... ----r-_·-·---_-.---------.. -.-. ---.-----.-~.---- CHAP. 9, 21 P. 64 ~ c ---.------ ~-- ------ Cni:: PUT E: t<. DEi/tO ~,I I TH C/\SE: STUDY 4 - - - ----_. f 9, PP. 66 - 68 ..•. - .. ---.~.- 24 25 -- TEST & EXECUTE PROJECT P RCJ GRA!": S ---- ---_. v:" o S F S S J n ~,I 1\1\ I fV1 R F R SPFAKFRS c C"·: ,.'} F • 2•3 o Subroutine DATAR Summary: I am going to speak to you today about the subroutine DATAR and some of the history behind its conception. DATAR is a format-free input subroutine designed to read numerical input data with or without a decimal point. A blank space is used as the delimiter (separator) and as many pieces of data (or as few) may be punched on a data card as desired. The call statement is CALL DATAR(K,X) which initiates the reading of a data card and the beginning of the search for K pieces of data which will be returned as floating point (real) variables in the vector X. Background: We at General Foods have enjoyed the usage of "format-:free" input capability as long ago as 1961 when the first Fortran compiler was made available for the IBM 1620. The only problem with the input capability of that compiler was that each time the READ statement was encountered, a new data card was not read. That is, the reading of new data carried on in the input area of the compiler where the reading of old data left off. This caused problems when one had more data on a data card than one wanted to read. This problem was so l ve d" when the next compiler from IBM and all subsequent ones for the 1620 (and the present compiler for the 1130) incorporated the format concept of input data that we are all familiar with. Other compilers for the 1620 (AFIT and PDQ-written by users) attempted to give format ... free input capability, but each had its limitations. II The few programs having the input capability we wanted were written in SPS (the assembler language for the 1620) and utilized a general purpose format-free input routine also written in SPS. There were many other capabilities lacking from the earlier compilers for small scientific computers such as the 1620 which drove others to write a group of input/output subroutines (also written in SPS) for use with commercial applications utilizing programs \vritten in Fortran. These subroutines were called FORCOM, an acronym for Fortran Commercial. -2- At the Denver COMMON meeting in July, 1966 Jim Kokie of IBM was explaining the FORCOM subroutines written for the 1130 (subsequently changed from a Type III program to a Type II one entitled 111130 Commercial Subroutine Package He made what appeared to be an astounding statement when he said, liThe interesting aspect of seven of these eight subroutines is that they are written in Fortran! Astounding, indeed, for he had just said in effect that with 1130 Fortran one now has assembler language maneuverability at a higher programming level. ll ). II Method: The method employed in DATAR and the other routines I have mentioned is a relative simple one. In 1130 Fortran (and also the 360 Fortrans) one has the capability of reading information from a data card in Al format from 1 to 80 columns. When. the variable used for reading is an integer variable, the resultant value after the read (under AI) is a numerical one which can be used for comparing and other purposes with no problems (Data read under an A2 format results in similar numerical-type values). Table 1 attached shows the numerical equivalent values for all valid 1130 characters which have been read under an Al format. (This is p. 150 from the 1130 Commercial Subroutine Package, Version 2, Program Reference Manual, H20-0241-2). This means, of course, that one can easily identify any valid 1130 character which is to be read in on cards by storing the appropriate decimal equivalents in your program and comparing these stored values with the ones read-in under the Al format. If we wanted to recognize a slash (/) mark, for instance, one might put the statement K=24896 in his program, read the appropriate variable in Al format, and compare the two. One can do many nice programming tricks this way. It is worthy to note in passing the relationship among the decimal equivalents of the ten digits. Each is 256 larger than the preceding one which allows for one to translate the decimal equivalent (K) of a digit read in Al format into its digit equivalent (I) with a single Fortran statement: o I=(K+4032)/256 437 -3- The letters can be related to the numbers 1-26 in a similar way, but one must program around the two discontinuities noted between the letters I-J and R-S. Remarks: DATAR was possible only because of the capability of reading characters on a data card in an Al format. The attached abstract, flow chart, and Fortran listing of the subroutine clearly shows what is taking place. However, a few remarks are in order concerning the philosophy of this format-free input subroutine. 1. Every time the call statement CALL DATAR(K,X) is encountered in a program, a new data card will be read and scanning started in column 1. As many data cards as necessary will be read until the K pieces of data (separated by at least one blank column) have been encountered. All numbers with or without decimal points will be converted to floating point and returned in the vector X. 2. Only numeric data can be read by DATAR. Any character other than a decimal point (.), minus sign (-), plus sign (+), or the digits (0-9) will cause an error message to print on the printer. If an error is encountered, the routine will halt on a PAUSE and will return to the first statement in the subroutine after PROGRAM START is pushed. (Thus, one can fix the error and continue at the point of the calling statement) . Note: Both an 026 plus sign (12 punch) and an 029 plus sign (12-6-8) can be recognized. 3. A decimal point alone, a minus or plus sign alone, or a minus or plus sign with a decimal point alone will result in the variable being set to zero. 4. The subroutine at present scans columns 1-72 for data. If any other limit besides 72 is desired, a one statement change is all that is necessary. o -4- o )ther Applications: I have already mentioned the Commercial Subroutine Package )ut it is worth mentioning again, particularly Version 2 which :ontains some twenty-three subroutines most of which are rritten in Fortran. Clearly, one could use this method very effectively when ne wants to generate alphabetic information from within one1s rogram. Of course, the "H" specification would also work nless the information is to be printed in variable places n the page (like the word "TOTAr,.:: as a heading of a column f figures whose placement on the page is variable depending pon problem size). I have used this idea many times in many programs, some of hich are shown below: C: 1. In a "scatterplot ll program each X-Y value is plotted as an "Alf. If more than one data point falls within the same grid, it would show as a IIBII etc. 2. In another program I convert the digits 1-6 to the letters A-F which is quite easily done (could be done, of course, for all the letters). 3. The following table shows five separate row labels, anyone of which could be encountered in a program. The index i is used to generate the proper row label. Condition --L I 2 3 4 5 4. A B C In another program (familiar to some of you) the row labels were generated from the i index according to the following correspondence. i 1 2 0 A A B A AB B C C D D E 3 4 5 6 7 Row Label A B A B C A B A C C B C 43(J -5- 5. In the same program as (4) other row labels were generated in this way: i 1 2 3 4 5 6 7 8 Row 1 1 1 1 2 2 2 2 o Label 1 1 1 2 2 1 2 2 1 1 1 2 2 1 2 2 As before, the index i generated the numbers in Al format so that blanks could be printed if the problem size were smaller than three. 6. In a one column distribution program one could separately identify all digits, letters, and special characters. In closing, I shall only say that the use of the Fortran language in this way is only limited by one's imagination. DSG/mh CI 0 C EBCDIC CHARACTERS AND DECIl\1:AL EQUIVALENTS A -16064 S -7616 blank 16448 B -15808 T -7360 • (period) 19264 C -15552 U -7104 < (less than) 19520 D -15296 V -6848 ( 19776 E -15040 W -6592 + 20032 F -14784 X -6336 & 20544 G -14528 Y -6080 $ 23360 H -14272 Z -5824 * 23616 I -14016 0 -4032 J -11968 1 -3776 - (minus) 24640 K -11712 2 -3520 / 24896 L -11456 3 -3264 M -11200 4 -3008 % 27712 N -10944 5 -2752 If 31552 0 -10688 6 -2496 @ 31808 P -10432 7 -2240 ' (apostrophe) 32064 Q -10176 8 -1984 = 32320 R -9920 9 -1728 23872 27456 o -150- 441 Subroutine DATAR Purpose: To read data in "free" format from cards, each piece separated from each other by at least one blank column (between cols 1-72) o Usage: Call DATAR(KTOT,A) Description of Parameters: KTOT - number of pieces of data to be read A - the output vector containing the KTOT pieces of data input output Remarks: An error condition will result if any character other than the digits 0-9, a plus sign (+), a minus sign (-), or the decimal point (.) is encountered. The "end of card" specification is set at column 72. If another specification is wanted (say, column 80 for a complete card scan); change the first card of the subroutine (DATAR 13) accordingly (i.e., KK = 80). C I ~·· .' Subroutines Reguired: None Input - Output Devices Used: 1442 Card Reader, 1132 Printer Method: Each data card is read with the format 80 A 1. Each character is scanned and the proper numbers formed arithmetically. o 442 I I- J,; 't ~ rt~ ~ ,.. ~ u.. " ~ "- It. ~ \L. ~ & ""' -.D ~ ~. .. :) R' .0 -;:r.., k (5) 443 / / ~!- / / ,~ DUD o "';;::-U::oTC" =(jn '! \! ~ I".f r. ~ i) I i\i T t G '- r, .:.. C; U p q 0 UTI f\i ~ i) A T A C. ( K TOT . ~ f\ ) ,"" '- ,.. F ~ E E F Q R ~.f. t\ TIN PUT '- C C ,.. \ R (1 UTI r--! ~ KT0T=Nlfv!8ER OF ,lI ! JT P :.1 T V '- C T r, p =(' I C (\1 t. ( 1 ) r:- ,\, S I 0 (1.1 (I.' ( 8 I) f) T r-,,' 1) T'vI c c ELE!\/;tNTS TO BE READ AND PLACED I N () F V ,A PI'. ? L ;:- ,S 1\1 5 C" ) SET *END OF CARD* AT COLUMN 72 - '- Ki(:::72 !( ::: 1 ,\ ] 03 R F.: A f) ( = 2 ~ 4 ()") ( N ( I ) , T 1 ,K K ) 40 FOR'I.AT(SOA1) =' '. "3 7 '!' c::. T (: r-,! ::: 1• NDEC=O 1 C) 5 I;: ( j\! ( I ) - 1 6 4 UK) 1 3 2 , 1 I'"' 1 , 1 '3 2 ,..' 101 IF( I-KK) 104,ln3,1n1 104 I=I+1 GO Tf) 10.'5 CH ;:C !( 132 138 I =( ~! I F ( j\: ( ( c 133 D L USC, I ) -? n n '3 /) I ) - 2 0 :, 4 4) ( H ECK 10? 1 !) 6 r ::; P ~ (' Q :A I~(N(I)-?4~40) c:, T r-. \1 =- 1. • IF( I-KK) 1("\7 T=I+1. 1{)8 Nc:,TDT=! I G~\I (1 2 - 6 - 8 C.A R D P U 1\] C H - 0 2 9 ) 1 3 11 , 1 '3 '3 , 1 ~ H 1 0 2 , 1 3 '3 , 1 (\ 2 1 N! J C, c:, I r, ~,! ( - ) 10?,lnA,1nQ -lU\"l~ DATAR DATAR DA T A,R DAT AI~ DATAR DATl\9 DATlI.9 DATAR OATAP DATAR DA T A,R OA Tl\R DATAR nATt\p nATA? riA,T t-,p n,ll,TAQ DATAR DA, T AR DAL,\R nA T [:.,r;:; rJATAR DATA? l"'\fI T l,? nATAP DATAR DAT A.R DATAR DA T ,AR DA T p,R f)A,TliQ f)ATAR 1 2 3 4 5 6 7 8 Q In II 12 13 ]4 1s lA 17 18 19 20 7.1 22 23 /4 ?C) 26 27 28 2G C' ., 30 ?-1 32 f'lt\Tt.r:;> ~~ DATAR DAT,AR DATA.R 3 L. 35 36 ":37 DATAR 38 f)AT.M~ i)ATAq j) A T llR f")A T L\R D,ATAR DATAR DATA,R OATAR ') A'j AR r)ATAD -:1,,",, 4n 41 42 43 44 4~ ."J 46 47 fJATAR 4A [)ATtq 4') 1()7,1?8,128 f)ATAR ')1"') DATA~ 51 S2 nAT t.R DA T AI~ nATAp nATt.;:- 5~ nllT~r") ::;r.,' 5"3 ~t... C'i" "I "il CHECK FOR r c'"' c c 100 1FeN(1)-19264) 109 NOEC=1 112.1()9,11~ CHECK FOR fNG OF 110 tFeJ-KI() 111 1=1+1 DATAR 57 DA T~.R 58 DATAR 59 POINTe.) D~CIMAL C~RD (COL *KK*) 111,11;',11'i r CHECK FOR ( c 112 PLANK 1~(NeI)-16448) 130,113,130 r '- ACC~PT r\ . 130 ~TGIT~ rF(N(I)+40~2) 0-9, QCJ~CT ALL OTH~R (HARACT~pc 131,122,115 135 IF(N(I)+1728) 122,122,131 131 W~IT~(3,14n) N(I ),1 140 FORMAT(1Hl,?lhNON-NU~SRI( CHARACTER~1X,Al,lX,9riIN PAUc,=: G0 TO 1 c c ~IO C r '- 114 "J!)!= (' 1, ~I t; r:: I~: ()~TAR =I = T-1 f),A.T,AP DAT t.R DATA? DATAR DATAR DATAR DATAQ Go') T0 117 r ~ y!:"S (: r '- 116 ~FIN=I-2 r '. ( r IF (.), (-), (+), (-.), OR (+.) SFT A(K)=n. .-- 128t..(!()=O. (-0. 1 c 120 T('. 1 R L =!\: F I 1\' - L =0 .1\1 1'"\ t:" (' +, I"1i ~ Lj 6·1 S2 6~ 64 65 66 67 6~ 69 7r: 71 77 73 74 75 76 77 78 70 8~ 81 d"''''l L. 83 84 8e:. - -' 86 87 8~ 8) on 91 92 ':;3 f)AT~R 94 0AT~Q q~ OATAr:? q6 DATA9 °7 DATAR 93 DA1AR 9; DATAR1:)O DATARl!")1 !lATA?l"? rAT~,~1f)4 I t:" T OATAR10S DATAR1!J6 DATtJ)107 DA.T AR 108 DATAQ109 LL=IARS(L) S~I~T=lO.~!-~:LL 1 ~"~ 60 f)ATAo1r:\~ L GREATt:"R THAN 0 cYIFT Lt:"FT L L~SS THAN n cHtFT RIGHT TO COLUMN,11) DA.Tf·R DATAR DAT AR. IlATf!.D DATAP. DATAR OAT A.R I)ATAR DATAP DATAR DATAR DATAR f)ATi\R DATAR DA-T AR DATAR DATAR DATAR DATAR r.JATt.R r>A,TAR f)l\Tt.r:? OAT t,R DATAR DAT !:..R DATAR ;) 0 =r t:"1} DATA~11(') T /\\ (., ? r:: p (' ( !:" c) r:: 0 ('\ ~.' /\11, J ~/~ a r:: 0 !)ATflJ?111 ~flTf\q11? = o K:( I( j\! S r R T J0 162 J J J =I( K ~~ , :\' F I /\1 IF(N(JJJ)+4n??) 161,162,161 16 2 ~! S TRT= NS Tq T+ 1 DATAR113 DA,T A.R 114 DATAR115 DATf.,P116 GnT{) 129 ,.. \- ... r - r 161 FFF=O. DO 160 JJJ=NST~T,,\lFrN 160 FFF=FFF*10.+FLOAT( (N(JJJ)+4032)/256) IF(L) 150,]52,1'51 150 FFF=FFF*SHIFT (-f") 15? Tf') 151 C!=F=i:;!=!=/~~TFT 152 ,~'( I() =FFC'Y.'~ T (;1\1 CHECK FOR LAST VARIABLE \... r '- r: 129 IF(K-KTOT) 120 i(=1(+1 c IFCT-KK) c 120 119,]}0 CHECK F0R EN0 OF CAqD (COL r *~K*) 1?1,1()"l03 121 1=1+1 GO TO 137 HAS DFCIMAL POINT BCFN ~NCOUNTF~!=D c YES - SHIFT C DECI~AL C c 124 N(I-l)=N(I) GO TO 110 c DIGITS ONF SPACE TO LEFT DATAR129 DATAR130 DATAR131 DATA,R132 DA.TAR133 DATA,Rl'34 DATAR135 Dl\TA,Rl':\6 DATAR137 DATAR138 DATAR139 DATAR140 DA,T AR 141 I)ATAR142 DATAR,14-:l. DA TA,R 144 DATAR145 DA.'T A~ 146 DATAR147 DATAR148 DATA P 149 f')ATAP1'1 rJ r'lt,Tf\01t:.1 12? TCCT-KIt) '?~,1?f..",~ 125 I=I+1 GO TO 100 126 NF I ~1= I ~lr'I~C= I+1 GO Tn 117 110 OCTIIO".1 r'I,ATl\Plr;? r)ATA.Q153 DATAR154 DATAR155 DATARl5A DATARl'37 DA,T,A o l::,R nAT~o,t:.1") I I r'lIF' * STOP': I,-!S IJA o flAT~R1?~ C r DAT/\Rl17 DATt-RI1S I)ATl\.f?llq rJATf)01?0 DATAR121 DATAR122 DATA,R123 DATAR124 DATAR125 r)AT,A,t:?1?6 f)ATAP127 I)~T,AP c S F SSt n~,I 1\1' J "A R F R F• 2•4 SPFb,KFP S n A\! Tn,). MAR T I 1\1, C HAT T A1\1 n GAS TAT F T F CH. I 1\1 ST., n 1\1 F n I. I rAT I n (\1 ALe n MPI) T FRS Y S T F Iv1 o 447 II, I\! F XP Af\1 f) F n The o 1041 AN EXPANDED EDUCATIONAL COMPUTER SYSTEM A paper Submitted by c David J. Martin Associate Professor Data Processing Chattanooga State Technical Institute COMMON Meeting Cincinnati, Ohio September 7, 1967 o o In the fall of 1965, the State of Tennessee entered upon a new adventure in the field of higher education, when Chattanooga State Technical Institute opened its doors for the first time o The purpose of this school was to provide, during a two-year period of study, a junior college education geared, not so much to the development of theories, as to the practical application of these theories. Qne of the fields of study included in its program is a data processing curriculum which is divided into three distinct areas o The first of these is, of course, the various programming courses o In the 14 courses in this category, the student is introduced to variety of subjects. From an introduction beginning with unit-record equipment and its applications, he progresses into machine-level language programming languageso From higher level languages such as COBOL, FORTRAN, AND PL/l, he then goes into Systems Design and Analysiso o In keeping with our philosophy that the data processor needs to have a wellrounded educational backgroung, the student is also required to take a group of courses called related studieso Among these courses are English, Public Speaking, Mathematics, and Social Scienceo Additionally, the student chooses to complete his course of study with courses either in Accounting or in Mathematics and Science. Our students' courses in computer programming initially included FORTRAN and 1620 SPS during their first yearo In order to expand their programming back- ground to include work with other systems, we planned to provide training and experience on the 1401 during their second year. Since we believe it is necessary for a student to compile and execute programs before he can begin really to o understand a computer-programming system, we faced a very definite problem. could we teach the 1401 when our school only has a 1620 computer? The ideal How Ii I" \ solution was to rent a 1401 computer; therefore, we called up our "fr j (md J 'j o IBM. representative" and asked the cost for renting an appropriately equipped system o When we heard the price, we realized that our ideal solution would have to be compromised somewhato Then one of our faculty members suggested that some pub1ic-spiritec company might be happy to allow us to use their 1401 system free of charge or at a reasonable costo But when we realized the amount of machine time and/or cost involved, this idea also faded into the background 0 And so, you guessed it, I was appointed the task of making our 1620 meet this new challenge. Up until this point, I had always believed that the 1620 users-group library was a worthwhile undertaking. Now it had a chance to prove itse1fo At the first of September a year ago I ordered a group of programs known as the 141 It included two 1620 programs--a simulator and Educational Computer Systemo an SPS assemb1ero The simulator portion of the 141 System provided for the simulated execution of 14 1401-type instructions 0 Among these were the basic input-output instructions--read, write, and punch--the arithmetic instructions of addition and subtraction, the data manipulation instructions of move and load, the various forms of the branch instruction and some few miscellaneous instructions o The indicators that can be tested are those that result from a compare operation; high, low, equal, and unequa10 The only provisions made for carriage control on the printer was the testing for channel 12 and skipping to channel 1, this function being automatically performed by the simulator, rather than being contro11ab1e by the program. Also provided were subroutines for multiplication, division, zero suppression, and editing of fields in the form of a dollar and cents amounto -~--.----.---~~------ We used this system through the entire fall quarter and were very pleasantly surprised with the results obtainedo However, it had several dificiencies that we wanted to overcome, so in December of last year I proposed to begin work on a project that led to the development of the 1041 simulatoro One of the first problems encountered in the 141 System concerned the amount of core storage available. Of the thousand positions available the first three hundred were reserved for use as input-output areaso In addition, the four subroutines mentioned above required approximately one hundred positions apiece; therefore the average student problem was limited to less than five hundred positions, which meant that the complexity and size of the various problems ahd to be limited. As a result, the first change was to increase the amount of core to two thousand positionso This change provided greater variety in the programs that could be solved by the studentso It also afforded the student experience in using a three position address to denote an address greater than 9990 A second need was for the student to be exposed to the power of the 14010 This need necessitated making available for his use the complete instruction set for a 1401 card system rather than simply the 14 instructions then available. In- cluded in this group of additional instructions were some to provide greater ease in handling problems which were commercial in natureo For example the move characters and edit instruction, probably the most powerful instruction on a 1401, was implemented in full powero which he wanted information displayedo Now the user could specify the format in In the edit-word he could denote the location of the decimal point, any commas, the desire to have leading zeros o suppressed or asterisks inserted in their place (a feature known as check protection), the insertion of a dollar sign, and the use of a CR symbol to denote \~ I~ I' a negative valueo The zero-suppression routine, likewise, was replaced by a single instructiono The other instructions added were zero and add, zero o and subtract, the multiple-output instructions, and store A and B address registers to facilitate subroutine linkages 0 In order to allow printer operations, a control-carriage instruction was includedo Finally, for compatability with the 1401, the select stacker instruction was included. Simulation of this instruction is of course physically impossible with a 1620, therefore it is treated as a no-op instruction unless there is an address included with it, in which case the appropriate branch is taken. We expanded the usefulness of the Branch on Indicator by allowing it to check for the Last Card, Channel 9, and Channel 12 situationso c In order to teach the 1401 indirect addressing scheme, it was necessary to implement the feature known as index registers. By storing appropriate values in the index registers, effective addresses could be generated without modification of the actual addresses in coreo and more efficient use of storageo The results are faster execution An additional feature of the 1401 allows for the CPU to utilize the contents of the A or B address registers, rather than obtaining new addresses from coreo This feature, like the index registers, results in better use of core and faster program execution. As a test for this new simulator, one of the programs chosen was the Autocoder Pre-List programo the systemo It worked, and so did some 500 student problems run against o '1 The final goa1--that of increased Through-put--was achieved in many ways, some o of which we have already pointed outo In addition to these, I completely rewrote twelve of the fourteen instruction simulation routineso For instance, new algorithms had to be developed for addition and subtraction since the highorder position of the fields did not necessarily have to be numerico We also used,wherever possible, the indirect addressing feature of the 16200 The net result is considerably greater Through-put over the 141 simu1atoro This was especially gratifying when you remember that, in addition to simulating the 1401 instruction, we were also maintaining the current status of the A and B registerso In addition to the ability to execute programs, both simulators have four routines providing the following features: 1) A formatted dump of the 1401 Storage area 2) The ability to alter the contents of the 1401 storage area 3) The ability to designate at execution time the address from which execution is to commence 4) The ability to initialize the 1401 storage area to b1ankso The formatted core dump includes displaying the contents of the various registers and the op-code that was last being executedo All of these functions are under the control of the operator and are initiated through the use of the 1620 console typewriter. As all of you are very much aware, the development of a computer is composed of two phaseso The first of these, which we have discu~sed up to this point, is the development of the hardware, but, in order to utilize effectively the elements o of the hardware, it is necessary to develop appropriate software look at what we have provided in the way of softwareo 0 Now let's IIi" I! I As you remember, there was provided in the original 141 system an SPS Assemblero It of course provided mnemonic op-codes corresponding to the 14 instructions of the 141 simulator plus the pseudo-op-codes necessary in a symbolic language 0 The highest address it could assemble was 999. for index register specification. It made no provision One of the interesting features of it was that it allowed one-pass assembly only for programs containing fewer than 100 source cards o Finally the label table had a capacity of ninety entries. Next we see a 141 Autocoder assembler that was developed by two of my secondyear studentso Though written independently of the 141 SPS Assembler, their program provided many similar featureso Several minor and two major modifications allowed the 141 assembler to be expanded into the 1041 SPS Assemblero One major change allowed the address generation algorithm to specify four-position addresses in three positions and to include any index register associated with that addresso c A second major change made better use of the available 1620 core storage in order to process much larger programs in 900 on a 40K machine. on~ pass--250 to 300 in 20K or up to 700 to This was accomplished by storing only the amount of information necessary to produce the source card image on outputo of the 141 assembler stored columns one through 550 The writers I had discovered after analyzing many source decks that storing ten to fifteen columns was more than adequate 0 At long last the 1620 user has for his use) for all practical purposes) a 1401 computer system. I hope many of you are asking yourselves what is necessary for you to use this systemo Needed is a 1620 with indirect addressing and with the additional 0 ', "j o instruction seto executiono These two features could be eliminated at the cost of slower I will be glad to talk with any of you about other modifications that you might desireo We plan to submit the 1041 system shortly to the 1620 Users' Group Libraryo Alas, as I began to breathe a sigh of relief, we recieved conformation that our school's new 360 System is in the process of being installed today. In anticipation of this installation several weeks ago, the question was asked as to when I 'p1an to have a 1401 simulator available for our 3600 I categorically denied even the idea of such a project, but I must confess to you that the idea of having a 4K simulator with actual stacker select capability has me already mentally drawing the flow chartso o o INSTRUCTIONS 1401 141 G' 1041 BRANCH ON INDICATOR CHANNEL 9 X X 12 X X lAST CARD X X UNEQUAL X X X EQUAL X X X LOW 0 X X HIGH 0 X X BRANCH WORD MARK OR ZONE X X COMPARE X X X NO OPERATION X X X READ X X X WRITE X X X WRITE & READ X PUNCH X READ & PUNCH X X WRITE & PUNCH X X WRITE & READ & PUNCH X X SELECT STACKER X X1<' CONTROL CARRIAGE X X X X STORAGE X 1000 2000 CHAIN OF ADDRESSES X X INDEX REGISTERS 0 X LEGEND~ X=STANDARD O=OPTIONAL S=SUBROUTINE 0 0, ~I ~--.---.-- ..- --- -- - - ... ---~~- Attachment o SUMMARY OF Number 1 FEATURES 1041 mSTRUCTIONS C':I ADD X X X SUBTRACT X X X MULTIPLY O/S S S DIVIDE O/S S S ZERO & ADD X X ZERO & SUBTRACT X X MOVE CHARACTER TO A OR B WORD MARK X MOVE CHARACTER TO .. 0 MOVE AND SUPPRESS ZEROS X MOVE NUMERIC X X MOVE ZONE X X MOVE CHARACTER & EDIT X S X X X X SET WORD MARK X X X ClEAR WORD MARK X X X CLEAR STORAGE X X X STORE A-ADDRESS REGISTER 0 X STORE B-ADDRESS REGISTER 0 X BRANCH X X X X iii S X LOAD TO A-FIELD WORD MARK X 0 4~7 X Ji't~'."''''''~~I~''''iw'~'_''''''*~ o SESSION NUMBER F.2.5 SPEAKERS DAVE DYE (PID) JOHN KEITH JIM STANSBURY, CHAIRMAN GAYE BABER DISCUSSION MR. DYE DESCRIBED THE OPERATION OF PIO, POINTING OUT THE PROCEDURE FOR HANDLING ORDERS AND TELLING HOW THE USER CAN HELP IMPROVE THE SERVICES. JOHN KEITH DISCUSSED THE SHIPMENT ANALYSIS QUESTIONNAIRE, PURPOSE AND USE OF THE QUESTIONNAIRE, AND A SAMPLE COpy IS INCLUDED IN THE REFEREt\!CE MANUAL. JIM STANSBURY DISCUSSED THE STANDARDS FOR THE 1130/1800/360 CONTRIBlJTEO PROGRAM LIBRARY. THESE STANDARDS WILL BE ISSUED ON THE FIRST UPDATE OF THE REFERENCE M.A"'UA L. (;1 o o Cincinnati - COMMON Sponsor: Administrative Division, Program Library Project Subject: IBM Program Information Department -- Program Library Procedures Speaker: D. R. Dye Company Represented: IBM Speaker's Address: IBM Corporation Program Information Department 40 Saw Mill River Road Hawthorne, New York 10532 914 -- 592-5790 Number of Pages: 4 o A presentation concerning the IBM Program Information Department (PID) was made at Cincinnati COMMON. Slides were used in conjunction with the verbal presentation Which was educational in nature. An open discussion period was included. o Although the presentation was formatted somewhat differently than the following narrative, it answered these same questions about PID that you (as a user) might ask. WHAT IS THE IBM PROGRAM INFORMATION DEPARTMENT (PID)? PID is the central control point for availability and distribution of IBM Programming Systems, IBM A.pplication Programs and Contributed Programs. PID serves IBM customers in the United States from an extensive facility in Hawthorne, New York. Customers of the IBM World Trade Corporation are serviced from similar facilities in Paris, Rio de Janeiro, Toronto, Tokyo and Sydney. PID's growth from its inception in the late 1950's has been dramatic. From an elementary exchange service for a few customer and IBM authored programs, PID has become a carefully organized operation which distributes hundreds of thousands of programs to users each year. WHAT DOES PID JV1EAN TO lVIE AS A USER? The availability of almost 3000 programs for IBM equipment means that users can often save considerable programming, procedural and systems design effort that would be required if they started from scratch. Often the economic payoff on an installation can be improved and the effective utilization can be increased and/or realized sooner. PID can take a load off your back by s erving as the distribution agency for your programs through the Contributed Program Library. PID also means that, as an IBM customer, you have a dependable, accurate and timely source of IBM authored programs to support your system installation. When an improvement is incorporated or a bug is fixed, in an IBM program, users registered with PID automatically receive the modification or a notice of availability of the release. o -1- ----------------------------------------j o HOW DO I KNOW WHAT PROGRAMS ARE AVAILABLE FROM PID? Abstracts of all programs available from PID are published in the "IBM Catalogs of Programs II'. Copies are available through your local IBM office. In addition, IBM sales and systems engineering representatives receive automatically, timely fact sheets called Programming Announcements (P-Letters) which give information on the availability and features of IBM Programming Systems and IBM Application Programs. In addition, a Memo to Users is sent to each customer on the PID file announcing the availability of a new release. Once you have ordered an IBM program and registered with PID as a user, you will automatically receive direct announcements of new releases of that program. HOW DO I ORDEg, A PROGRAM FROM PID? Normal program orders should be submitted using Program Order forms available from local IBM offices or special prepunched order cards supplied to you by PID. By a normal order we mean one that will be processed under PID's standard in-house processing cycle of up to ten working days. Transit time to and from PID is in addition to the ten working days in-house. Orders that require faster handling should be submitted through your IBM representative after he has contacted PID by phone to make arrangements for special handling. It is a good practice to consult your IBM representative before submitting an order. Certain information must be provided on the form and sometimes magnetic volumes must be submitted with the order form. Without all needed information and magnetic volumes, Pill cannot complete the processing of your order. The IBM representative can help you in determining if the order submittal requirements have been met. HOWlS THE QUA,LITY OF Pill, DISTRIBUTIONS ASSURED? Extensive use is made of special hardware designed and built for Pill. Also, sampling, chain copying, programmed comparisons and assigned personal accountability techniques are used. o -2- 4~1 ,I I' ]~ I ! The result is that the quality level of program materials distributed by PID is very high. o One particularly interesting piece of special purpose gear used for this quality control is the IBM 7299 Tape Copy and Compare System. This system automatically performs a bit for bit compare, in core, of written output against input and checks record counts and control labels. This assures the readability and completeness of users r magnetic tapes onto which programs have been copied. If you receive a magnetic tape bearing an external label stating that the tape was "verified readable at PID" but you experience difficulty with it as input on your own system, we suggest that you try to read it on another drive and even another system, if possible. If a problem is still encountered, your CE should be notified so that he may determine the precise nature of the reading problem. WHAT CAN I DO TO USE PID MORE EFFECTIVELY? A few simple checks when submitting an order will insure that you get the program you need when you need it. 1. Be sure that the order form is complete. These items are needed by PID to control the accuracy of the order process: o a. IBM customer number and branch office number (your local IBM representative will fill in this information for you if requested). b. Type of material required. c. Track mode and recording density. d. Full return address including ZIP code and "Attention of". 2. Be sure to submit a magnetic volume to PID if it is required for the program being ordered. The program abstract in the "IBM Catalogs of Programs If always indicates if a volume must be submitted. A.lI magnetic volumes should carry external labels identifying the sender and the program being ordered. 3. Send the order form and the magnetic volume to PID as one package. -3- o o Plan ahead -- allow adequate time for shipping to PID, up to ten workdays at PID for processing and up to four days for return shipment. If faster service is needed, have your local IBM systems engineer or sales representative call PID. Report packaging and distribution problems to your local IBM representative immediately if a replacement is needed. The Program Distribution Questionnaire, included with every shipment from PID, is a convenient means of reporting on the condition of program materials. Please use it. -4- o o SESSION NUMBER SP E A.KER S NONE - F.2.7 GENERAL DISCUSSION DISCUSSION C.O.S. - COMPATIBILITY OPERATING SYSTEM. SOME 20 PERSON PARTICIPATED I'" A GENERAL DISCUSSION OF C.O.S. VARIOUS LEVELS OF C.O.S. EXPERIEf\.ICE LED TO A GOOD OISCUSSIO~'. L E~, GTHO F THE MF E T I 1\1 G t..J AS ABO UTI H0 URI 0 ~1I Nil T E 5 • o o SESSln"" "HIMRFR F.3.1 SPEAKER S JAMFS N. FISHER, THE RAnGER co., INC. nN STORaGE & RFTRIFVAL OF PFRtv'1A~!FT FILFS FnR THE 1620/1311 MO".IITnR SYSTFM o o Storage & Retrieval of Permanent Files for the 1620/1311 Monitor System o by James N. Fisher The Badger Co., Inc. Cambridge, Mass. o! THE BADGER COMPANY, Inc. o A method of perll1anently loading of inforll1ation (either in the forll1 of nUll1eric data or Hollerith-type Forll1at headings) has been found which fills a gap inherent in the IBM 1620/1311 Monitor Systell1. consists of three steps in which: This ll1ethod (1) a Fortran prograll1 is written to read the data and tell1porarily store it in Working Storage (this is done through the usage of the RECC}5RD statell1ent), (2) a set of three cards designed to write a lOO-digit indentification tag preceding the data files is then read into the cOll1puter, and finally (3) a*DLC}5AD operation is perforll1ed which is used to relocate the information froll1 Working Storage into a perll1anent disk storage address. The data ll1ay be used at any till1e by copying it into Working Storage and then calling for it whenever necessary. steps: This is accoll1plished in two (l) a *DC¢PY operation used to copy the perll1anent data files into a working storage area and (.2) a FETCH statell1ent used to call in the data by a ll1ain prograll1. The prograll1 is set up for a Monitor systell1 with Working Storage beginning at 00219. If the Working Storage area has been redefined this value must be altered accordingly. STORING DATA FILES ON DISK I. Loading Inforll1ation into Working Storage A Fortran program is written by the programmer to read the desired inforll1ation into the Working Storage Area. A prograll1 o THE BADGER COMPANY, Inc. -2to read in an alphameric set of headings is shown as follows: i-i-J¢B o 5 i-fF¢RX DEFINE DISK (nl, n3) DIMENSI¢N YH (n 1'. n2) D¢ 2 YH 2 (N) N=l, n 4 = 0.0 READ 1001, Nl, N2 READ 1002, (( YH (J, K), J = 1, N 1), K= 1, N2) N=2 REC¢RD (N) 1001 (( YH (J,K), J=l, Nl), K=l, N2) F¢RMAT (2I4) c 1002 F¢RMAT (n l A4:) END Where: n l = number of individual items to be written per data record=Nl n2 = number of data records to be stored = N2 +1 n3 ~ n2 n4 ~ nl . n2 This program, since it is to be used for alphameric headings, uses an A-Format in Statement number 1002 to read in data. For nu- meric information the programmer can use either E-, F-, or IFormat instead. Note that in the third instruction after StateInent 2, o THE BADGER COMPANY, Inc. I~ -3- o N is set equal to 2. This is done in order to leave the first sector of working storage available for the 100 -digit identification tag of Section II. Also: The maximum nUlnber of sectors/ data record = 2. This is determined by the value of f and k (See Service Manual, File No. 1620-36, Form C26-5739-3). II. Writing Identification Tag Next, the following three cards are loaded into the computer, with the Working Storage area defined as beginning at 00219 in Card 1. Cd. 1. 3600100005003600180005003400050007013800050007024810021900100100 Cd. 2. 9878971000100101001200008040010659998 Cd. 3. Blank Card Note: Some of the inputs in Cd. 2 are not necessary. However, it is strongly suggested that they be used exactly as presented in this paper. IlL Permanently Loading of Data Finally, the data is loaded into a designated disk address. This is accomplished by means of the following set of cards: ffJ¢B ffDUP *DL¢'AD 5 (COl. .Col. 21 name (1 002.191nSnSnSnSnSl n6 n6 n6 n 6 n 6 49 DI o THE BADGER COMPANY, Inc. I~ -4Where name = name assigned to the data file by the programmer (6 o characters or less). ns = 00219 n6 =available + n7 - 1 sector address - able to contain n7 data records. This may be determined from a DIP* Listing of the Monitor System. n7 = N2 if there is one sector/data record; otherwise use 2(N2 ) for two sectors/data record. Note: See note for Section I. Both nS and n6 are five-digit numbers which must be rightjustified. UTILIZING DATA FILES 1. Copying Data Into Working Storage When the data files are desired, they must first be made available to a program by copying them into Working Storage. Copying of infor- mation from a permanent disk address into Working Storage is accomplished in the following manne r: Co121 f;t:DUP *DC¢PY name Where name * (ln6 n 6n 6n 6 n 6 InSnSnSnSnSl0021 9 = same as that in previous section. a DIP Listing consists of a map of all programs, their corresponding disk locations, plus all available sector locations. obtained through the USER'S Group. 476 This may be The IBM Program Library THE BADGER COMPANY, Inc. o -5Nwnber is 1. 6. 141 .. o ns = n6 Note: + n7 - 1 and must also be a five-digit right-justified number. It is strongly suggested that the programmer carefully check the *DC¢FY and *DL1>AD cards. Errors in these cards have been known to render all disk-loaded programs completely useless. II. Operations with Data File The program reads in the data files by means of the FETCH statemente The record number is set equal to 2, as was indicated in Step I of the Storing Data Files on Disk Section. For a detailed explanation as to the proper usage of the FETCH and REC¢RD statements, see page 106 of the IBM 1620 Monitor II System Reference Manual - File No. 1620-36, Form C26 -5739-3. In order to fetch and utilize this stored information, the program must contain a DEFINE DISK statement, in which the value of n 1 must remain unchanged, while all n 2 and n3 terms may now be less than or equal to those corresponding to Step I of the first section. A sample segment of a program used to fetch the alphanuITIeric inforn1ation of Step I, Section I and complement it with cOITIputed values is pre sented below: N =2 FETCH (N) «YH (J,K), J=l, NI), K=l, N2) ..../.;' / THE BADGER COMPANY, Inc. -6- · ...................................... . ·...................................... . · ...................................... . o PUNCH 1003, «(YH (J,K)., J;;:l, Nl), (Z¢ (N,K), N=l, 3), K=l, N2) 1003 F¢>RMAT (nl A4, FIO.O, 2F13.4) Where: Z¢ (N, K) = the computed values used for output by the program. The following output was obtained from such a sample segment: DIAMETER, FEET 1.0000 2.0000 3.0000 TRAY RING, INCHES 4.0000 5.0000 6.0000 DOWNCOMER WIDTH, INCHES 7.0000 8.0000 9.0000 PATH LENGTH, INCHES 10.0000 11. 0000 12.0000 DC-TRAY CLEARANCE, INCHES 13.0000 14.0000 15.0000 INLET WEIR HEIGHT, INCHES 16.0000 17.0000 18. 0000 OUTLET WEIR HEIGHT, INCHES 19.0000 20.0000 21. 0000 HOLE DIAMETER, INCHES 22.0000 23.0000 24.0000 HOLE PITCH, TRIANGULAR, INCHES 25.0000 26.0000 2,"{.0000 C At the moment, permanently-loaded information may only be used by a disk-loaded program. This may be improved upon in the future. The advantage of permanently storing data files on the disk is that a programmer now may be able to limit the number of F¢>RMAT statements appearing in his program. Further, independent programs may now be allowed to use the same records in places, thus further reducing the amount of storage required for Bome programs. Finally, I OJ· ; , THE BADGER' COMPANY, Inc. • 5 •• -7long chains of alphameric headings complemented by output data o may now l::e permanently stored as data files. Caution, however, should be used in experimenting with the Storage-System, for as mentioned in Step IJ Section IIJ some errors may result in the destruction of disk-loaded programs. r1' N. Fisher o 4'-1?) THE BADGER COMPANY, Inc. ======AtU'k::JNi4i@$;aW;:;"C=U4MM aM, U;;4i4 \ U* ,4$. z: 4J , ,PI, T U4i¥#M#%M 44 • • au SESSION NUMBER - - - - - - - : - - ... .... '" -.~-- •.---'"-" F.3.4 SPEAKERS NO SCHEDULED SPEAKERS. DISCUSSION PLANS WERE MADE FOR THE 360 AGENDA AT THE SAN FRANC1SCO MEETING. THE GOOD AND BAD RESULTS OF THE SESSIONS AT THIS MEETING WERE EVALUATED, AND WE DECIDED WHAT PLANNED PRESENTATIONS WERE DESIRED AT THE NEXT MEETING. c o S F S SIn [\! 1\11 I M R F P ~ •A R F Y 1\.1 L r.-) s. F• SP~!\KFR~ (~ F ClP ~ F ". n G F 1'1 r:: R A L T J fJl F S T I J r) Y fJ 1'.1 to L Y S T S F n R C ! I~ o Ivl (l T fi R S vI C) R!< T ~! S T TTl .fT E j\A F A S l )P F rv' F ~.1 T n [\1 C n,., 1 P l , T F= R o COMPUTER TIME STUDY ANALYSIS FOR WORK MEASUREMENT George J. Reynolds Assistant Professor of Industrial Engineering General Motors Institute Flint, Michigan ABSTRACT c This article describes the format for the observation, recording and calculations of work standards. In addition, a computer program for the IBM 1620 Model II 40K is included which provides a more efficient calculation time for each time study. This in turn reduces cost per work standard. o COMPUTER TIME STUDY ANALYSIS FOR WORK MEASUREMENT George J. Reynolds Ronald W. Cox o The determination of a fair day's work has progressed from haphazard methods to rather scientific methods. One scientific approach to this is called "Time Study." Time study can be explained as a technique for the measurement of the time factor in the utilization of men, materials, tools, and equipment. In most industrial organizations, time study is one of the common techniques used for setting standards which are used as a basis for determining a fair day's work. In many organizations, the department doing time study work is called Industrial Engineering. Taking a time study consists of breaking down the operation into parts and recording the time taken for each of these parts by means of a stop watch. It also consists of recording job data, and setting the This standard is expressed in time per unit and standard for the job. is considered representative of a fair day's work. A time study primarily records the cycle time of the operation. In properly recording a time study there are certain data which must be clearly set down so that anyone referring to the study at a later date may know all the facts surrounding it. Some such items are obvious in their purposes - as for example, the part name. Others are more ;n the nature of manufacturing data. The following is a list of those items which are most frequently found on time studies: o Date of Study. This establishes the day, month and year in which the study was made. Under certain conditions it might be necessary to 477 1 I:, 1 2 I indicate the hour or the shift. Effective Date. This establishes the day, month and year on which the study became effective. It is highly important that this date tie o into ·the routing date. Material. This item should adequately describe the material used. The kind, the specification number, the dimensions and any other facts required for identification must be set down. This is quite important since the study is limited to the specified material, and any change in the material may automatically call for a new study. Part Name. Carry here the full part name as it is carried on the bl ueprint. Part Number. Accurately record the part number as it appears on the print. Operator Number and Name. Aside from identifying the man upon whom the study was madethe very act of learning the \'lOrkman ' s name - o if done in a tactful and friendly way - can help the time study analyst in selling himself as well as letting him know the man. This is impor- tant in establishing a better attitude toward the study on the part of the operator. Department Number. To show where the study was made. Machine Number and Name. This item should indicate by name, model, and inventory number the specific machine studied to identify it since no t\,/O machines, even though they be of the same make and model, perform identically. Cutting Compound. Show the kinds of cutting compound used such as oil, soap, etc., and wherever available refer to the specification number. The compound frequently has a very direct effect upon the cutting time and the correct recording of this item is an essential. o "11 IJr 3 o Operation Number and Name. t~~ A code to identify the operation and to it up with the routing. Speeds and Feeds. A machine time study that does no: rarry complete and accurate speed and feed data has little or no value since it is such data that tell s us hO't1 effect; ve 1y the machi.ne was performi ng duri ng the study. Tools and Tool Number. Here identify whatever die, tool or fixtures are used in the study by number. Where necessary a brief description may be used as for example: Carboloy tips, special diamond dresser, abrasive wheel specif;catif~, etc. Like material data, speeds and feeds, and cutting compound, this identification of tools and tool number definitely limits and clarifies the study and a careful and accurate recording is important since any change would qualify the operation for a recheck. o Production Per Hour. When you have completed the study through the development of the standard. calculate the number of pieces by dividing 1.0 hour by the standard time per unit. Male or Female. Indicate here the sex of the operator. This in- formation may be called for in labor discussions relative to whether a job is correctly classified as male or female. Allowances. This space provides for entering certain allowances for items not covered in the elemental detail of the study. Total Tirre of the Study. Here is Y"ecorded t;.,:: starting and stopping time of the study, or the total overall time of the study. This data may be used as a check against the accuracy of the study. Name of the Observer. The time study analyst's name should be signed here. o 47q 4 Reason for Study. This space is set aside for such general remarks as the time study analyst may wish to make, for example, "Rechecked o Standard ... Approvals. Here is recorded the foreman's signature and all the necessary approvals required by management. Work Place. A sketch to work place, piece part showing operation or area worked on, etc. The more completely and accurately we record on our studies all the data relative to the job, the more valuable our studies become, both to us and to those functional areas which will call on us every day for information. As time passes, we very quickly forget the details surround- ing the taking of a study and when it becomes necessary to discuss it, a month or year or two years later, we very often cannot recall the whole picture to mind. Therefore, it is for this reason that the true value of full and correct job data is necessary. The actual mechanics of determining the standard time are not complex, but must be thoroughly understood and correctly done in order to arrive at a basis for getting an accurate work standard. The generally accepted method is: 1. Obtain time data from observation by gathering stop watch readings, element frequency, foreign elements, performance, and allowances. 2. Calculate leveled average time for each element. 3. Determine allor/ed time per piece. 4. Calculate standard time. c ~I 5 o After completing the recording of stop watch readings, earmarking irregular elemental times, and recording elemental frequencies, then individual representative time values must be determined for each element. These times for each element come from the recorded snapback or continuous stop watch readings. This procedure can be explained by means of a sample continuous recorded study (Figure 1, page 11). The first recorded time from the starting of the watch until the end of the first element is .07 minutes; so this figure would be recorded opposite (I) in element #1. Then the time for element #2 can be obtained by subtracting the continuous reading of element #1 from that of element #2. Thus, .38 - .07 = .31 and this figure is recorded opposite (I) in element #2 and so on, until all times are obtained. These times, then, will reflect the standardized method and conditions under which the operation is to be performed and C, c l' I should be averaged in order to determine the leveled average time fur each element. This leveled average should be calculated by dividing the total of all time intervals, which are not earmarked,by the number of such intervals. For example, the completed study of the first element in Figure 1, page 11, covers a total number of 10 observations for the cycles. With one of these recorded times earmarked, the leveled average time should be determined by dividing by 9 the total time consumed by the remaining 9 time intervals. In this manner, the time for this regular element will reflect the basic established method for the operator in the performance of this particular part of the operation. Earmarked irregularities are called foreign elements. o Where the irregularity is timed and recorded with a regular element reading, 1-RI 6 the foreign element can be calculated by subtracting the leveled average time from the recorded watch reading. o After this time value has been calculated, the prorating can be done the same as if the irregularity had been timed and recorded separately. These calculations with respective frequencies should be plainly shown in the provided space on the time study form. In addition to foreign elements, the details of delays for allowances should be filled in. These will tend to vary depending on company policy. If company policy involves performance rating, the next step is to determine the operator performance by comparing the operator to the average normal operator concept. The objective of this rating is to establish an allowed time which is representative of the average normal worker. This rating should be expressed as a percentage above or below 100% which represents the average normal operator. c Next is to determi ne the allowed ti me per piece for each element of the study. This is done by multiplying the leveled average time by the performance and the elemental frequency for each element. Finally, thi.s method of calculation involves the summation of all allowed times and all detail of delay allowances. After this is completed, subtract the total time for allowances on a per shift basis from the total shift time to determine the minutes available for work • .. Next, the minutes available for work time is divided by the summation of the. allowed times plus delays on a per piece basis. This yields standard pieces per shift •. Oivide this number by eight hours which gives standard pieces per hour. Divide the standard pieces per hour into one hour and the final work standard is .expressed in hours per piece. o 7 1 All of the calculations for leveled average time, allowed time per piece, foreign elements, detail of delays and the setting of the final work standard can be accomplished by tnp IBM 1620 Model II, 40k computer. In )rder for the computer to accompli sh thi s, the time study I·i analyst must prepare his studies in a language the computer understands. Therefore, lt is required that all data be in decimals whereby the key punch operator can take this data directly from the time study observation sheet (Figure I). The IBM cards should be prepared in the following manner: FIRST READ STATEr1ENT (.5F7.0) a. Part Number b. Operation Number c. Type of Study Code C = A" Continuous 12 = IIAII Snap Back 13 = IIBII Continuous 14 = IIB" Snap Back 15 = "C" Continuous 15 = "C" Snap Back 11 It d. Number of elements in the study. e. Number of columns of element readings. SECOND READ STATENENT (lOF8.2) Recording of Element Reading a. Keypunch individual stop watch time values in vertical order regardless of the type of study. o b. For any missing time values or those disregarded because of some assignable cause code as II 4f3 Ua:00::"4#::&* (·M*"t#,,==.,", _ zero • II 8 c. In the case of a continuous type of study where a value has been coded as "zero" add 1000 to next acceptable o reading. d. If any of the readings are earmarked as a foreign element code as follows: Type "A" add 900 to the value .. "B" .. "e" .. "0" .. II Ell 800 .. II .. 700 .. .. .. 600 II II 500 II II II II .. II . II Note: Add zero if necessary for a total of fi vei terns. THIRD READ STATEMENT (lOF8.2) Element Performance Evaluation and Element Frequency The performance and element frequency must be key punched C consecutively for each element respectively. FOURTH READ STATEMENT (15F5.2) a. Foreign element frequency b. Detail of delay allowance 1. Minutes/shift items 2. Minutes/piece items The frequency and detail of delay allowance items are key punched consecutively, i.e., frequency, minutes/shift item, minutes/piece item as line 1 horizontally, etc. If any categories do not have five items in the particular study, key punch zero as the missing items until a total of o five items each have been listed. #4 1 9 o FIFTH READ STATEMENT (7A4) I. Name card. b. Continuous run - if more than one tfmestudy is run at the same time, a 1 is key punched in column 30 to separate the studies. For example, with the data from the time study shown in Figure 1, page 11 as input to the IBM 1620, the computer would give the following output for all the necessary calculations involved in stop watch time study analysis. c o ,4 ,iiiueam,.awu==iil4&&MA& 1 1.,II 111 10 TIME STUDY OBSERVATION OUTPUT NAME RON COX PART NU~1BER 88128 OPER NUMBER 12352. TYPE OF STUDY 11. LEVELED AVERAGE MINIMUM PIECE ALLOWED TIME LEVELED AVERAGE MINIMUM PIECE ALLOWED TIME LEVELED AVERAGE MINIMUM PIECE ALLOWED TIME LEVELED AVERAGE MINIMUM PIECE ALLOWED TIME LEVELED AVERAGE MINIMUM PIECE ALLOWED TIME LEVELED AVERAGE MINIMUM PIECE ALLOWED TIME LEVELED AVERAGE MINIMUM PIECE ALLOWED TIME LEVELED AVERAGE MINIMUM PIECE ALLOWED TIME ELEMENT 1 .0733 .0366 ELEt~ENT 2 .3320 .1411 ELEMENT 3 .7270 .3453 ELEMENT 4 .1300 .1300 ELEMENT 5 .5114 .4347 ELEMENT 6 .0430 .0204 ELEMENT 7 .2566 .1219 ELEMENT 8 1.5260 .2746 DELAY MIN/PIECE A= .0106 o= 0.0000 B= C= .0258 .0282 ALLOWED CYCLE TIME/PIECE ATTAINABLE HOURLY PRODUCTION TOTAL DELAY (MIN/SHIFT) TOTAL DELAY (MIN/PIECE) MIN AVAILABLE FOR WORK STND PIECES/SHIFT STND PIECES/HOUR STND HOUR/PIECES 1.5048 29.871 34. .064 446. 284.155 35.519 .0281 o I I , '--"'-'~--- ~~--~~- ElEMENT DESCRIPTION NO I • =1 ! UfT SIDE ~1 ement I RIGHT SIDE ._. . rA 5 6 7 8 I 1 9' flO AVER I I . ~fL~ LEVEL- PER- ED AVER. FORM-I' 1 19511/2 \ \100 I 1/1 .07 3.57 I I I I I f I I /100 AL~?:eED f MINS/PC FREQ. / 85 I 1/2 I I 1/2 I I c 1.1014.6218.26112.30\15.88119.82123.44127.09130.75134.74 1 1 El ernen t 4 I I I t J ~ 3 I t-ct--.-38+1-3.-92--11-7-.5-2+-1"-1.-57-+1-15-.1-31-\19-.0-7+\2-2-.72-+:\2-6-.3-81l-30-.-02-1--~134-.-02-11 c Element 2 I I I I HeI 1 l 7.17 ~_1.2~14.82118.75122.38126.03129.68131691 11;1 Element I ELEMENT TIME ELE. NO. t I J -':4 Zl I-t--.--t-4-.7-6-+--8-.4-11--.-4'+-16-.0-0+-,-g.-97-+-23-.58--+-2-7 c 1 22 12 >< ><: ,I Flp-m~nt ia J C I I:.lement B 1.71 5.29 8.88 12.93 16.88 20.47 24.10 27.75 31.77 35.54 I Ip I I '.74 5.34 8.9112.96 16.93 20.53 24.16 27.80 31.81 35.57 C I e 2.01 5.58 9.52113.22 17.19 20.79 24.4128.0532.07 35.83 I I e 1. I H----+--t---t---t---+---4---+--+--+---i Elemen t #17 Element -f,fff T + : I II I Ie DETAIL OF DELAYS: MIN/SHIFT MIN/PC Fumble PERSONAL P & cu Stuck Part Drop Part 24 10 ATTAINABLE HOURLY PRODUCTION 60 MINUTES CYCLE TIME) = (ALLOWED 1/2 95 1/2 90 1/5 Dj 480 MIN. - I TOTAL OR ------------ __ ALLOWED CYCLE TIMf/PC ~ = ________________ _______________________ , MIN ) AVAILABLE ( FOR WORK ~ (ALLOWED CYCLE) ( STD PCS TIME + DELAYS IN MIN/PC /SHIFT (STD PCS/HR) + _______________________ = ___________ + 8 = _____ .. __ .__ . STANDARD HOURS/PI ECE _____________________ ._. _____ _ TOTAL 1£-7 0 = FINAL CALCULATION OF STANDARD: ALLOWED MIN ( DELAY SHIFT I 95 I~ FOREIGN ELEMENTS - 1/' t'- ~ ... ~ c: e 3.51 7.09 11.07 14.76 18.68 22.31 25.94 29.60 33.61 37.36 1 85 o o ~ o SESSION NUMBER F.3.7 SPEAKERS NONE - SQUAWK SESSION DISCUSSION PREPARED A LIST OF RECOMMENDATIONS FOR IBM. IBM, WAS WITH US. OICK PHILLIPS, OF c o 4ff o SPECIAL ADDED ATTRACTIONS IBM 1130 SYSTEM I RM QUI CKTRAN 0 F. M0 NSTRAT I 0 ,,! o o 4ft] o IBM QUIKTRAN DEMONSTRATION Parlor J, 4th Floor, Netherland Hilton Hotel QUIKTRAN is a time-sharing data processing system that brings the power of a modem large-scale computer directly to the desk of the engineer and scientist, the mathematician, the business and financial planner - anyone who solves problems with numbers. The QUIKTRAN system uses the FORTRAN language and has available a library of widely used programs. To show you the QUIKTRAN system in the following DEMONSTRATIONS: o~ ration, we have arranged c 1) Common library programs including: a) ROOT, a program which finds the nth root of m by Newton's iteration method. b) QUAD, which finds the real and imaginery roots of the equation ax 2+bx+c. 2) Programs written especially for the COMMON meeting designed to demonstrate the conversationality of QUII)TRAN • Demonstrations will be given: Tuesday, September 5 Wednesday, September 6 Thursday, September 1 Friday t September 8 6:00 9:00 9:00 9:00 p,m. a.m. a.m. a,m. - 9:00 9:00 6:00 5:00 p.m. p.m. p.m. p.m. C i '" ",,; 410 ---~-.--------------~------------ o IBM 1130 SYSTElVI An IBM 1130 has been provided for the COMMON Meeting. It will be available from Wednesday (Sept. 6) through Friday (Sept. 8), to all members for testing or demonstration purposes. The 1130 consists of a 1442 Card Read/Punch, an 1132 Printer, and 8K disk. Two key punches, disk packs, and a System Reference Library are also available for your use. The following programs have been loaded on disk packs: lVlonitor (Mod. level 4) Commercial Subroutine Package Scientific Subroutine Package Statistical System Vvork Mea surement Aids Structural Engineering System Solver (STRESS) lVlechanical DeSign System Numerical Surface Techniques Critical Path Method/PERT Other Demo Packages & Utilities The equipment is located in Parlor I of the Netherland Hilton. You may sign up to reserve time for testing or demonstration. Please feel free to stop by any time; there will always be someone there to assist you. o 4ql LIST OF REGISTRANTS SF:PTE~'1RF.R C0/'"f'<10f'I r~F.F.TI"'G SEPTEMBER 6-7-8, 1967 o CINCINNATI, OHIO ARf'-tFR, ,I R 5904 SEHFLL RD PEf\.ISACOLA, ALLRR FLA 32504 TTTON, E ,J &3 BOX 191 C L AR0 S V ILL F, t·10 63336 ALLEN, J E 1206 MULRERRY ST DES tv10 I ~\I E S, I 0 I~J A ALVA.REZ, J J IBM GLENDALE LAR DEPT E1\1 I) I COT T, f,! • Y• IV,tDER SON, 50309 265 13 7 60 B K 20 SOUTH ROAD S 0 lJ T H I I'l GT(1 r", C n (\.1 N ARt"1RRUSTER, c L F 25136 ARf\,lTSON, W M 1700 W. THIRD AVE. FLINT, MICH L~8 50 2 A J ARTHUR, 3270 CARRILLO AVE SANTA, CALIF 95051 ATER, G T 35 PAGE PO CHILLICOTHE, OHIO 45601 AUSTIN, L B 1700 W. THIRD AVE FLINT, MICH RABER, G 48502 ~1 3000 SPOUT RUN PARKvJAY ARLINGTON, VA 22201 BAILIE, 0 L 455 C STREET v.JASHOUGAL, ''''ASH 98671 BAILEY, D C MONTEREY AND COTTLE ROAD SAN JOSE, CALIF o LIST OF REGISTRANTS SEPTEMBER COMMON MEETING o SEPTEMBER 6-7-8, 1967 CINCINNATI, OHIO BAKER, L H 1206 MULBERRY ST DES MOINES, IOHA r~ BALL, 50308 J 159 IDLE HOUR DRIVE LEXINGTON, KY "-0502 BALLENTINE, J D 547 PAIGIE STREET SCHENECTADY, N.Y. 12307 BA.Rr40RE, D R 4780 SNO~' DRIVF SAN JOSE, CALIF 95111 BARf\IFY, P L 740 S. ALABAMA INDIANAPOLJS, IND BAR R, 46206 S 222 BROAOIr-.IFL NEH YORK, N.Y. RE"IFOICT, 0 E 2000 FORRER RL\lf) DAYTON, OHIO 45401 BERGER, 0 E 2605 REYNOLDS CR. HUNTSVILLE, ALA 35810 R J ,)00 I DR HAI'-1~'1nND, LA B ER [\1 A R 0, 606 BERItI I C1<, J B I C1< FOR 0, 70401 ~:1 f'·IA II\! H A1t! K E S RU RY, rJ f\1 T P /J, GREENCASTLE, o 10038 1;'·'0 46135 BLAC KI\! E Y, \~! C T5&0, ARC, 2020 BLDG no I·.! (Htvl r1 I 0 L A"I D, "·1 J C H 1 RLA.TCHLfY, C G 300 BENT RD PA t-.Jy~,jCOTF:, 19095 ,' ',,t~1 I LIST OF REGISTRANTS SEPTEMBER COMMON MEETING SEPTEMBER 6-7-8, 1967 o CINCINNATI, OHIO BLISS, R J 5830 WESTHENRIETTA RD HENRIETTA, N.Y. 14606 BOBAY, J P 1000 5TH ST COLUMBUS, IND 47201 BO"'IO, W F 656 STORM AVE BROOKHAVEN, MISS 39601 BOSCHAN, C 144 EAST 24 ST NEW YORK, N.Y. 10010 BRADY, J ..J 4620 FOREST AVE NORWOOD, OHIO 45212 BRANAGAN, R E 2442 TRENTON AVENUE MONTREAL, BRASKAMP, B 1111 CONNECTICUT AVE WASHINGTON, D.C. QUEBEC N.t-J. 20036 BRECHBILL, 0 0 625 CLEVELAND COLUMBUS, OHIO 43215 BRENNER, R L P.O. BOX 561 BURL I NGTON, IO\NA 52601 BRENNAN, R D 2670 HANOVER ALTO, CALIF BRIGGS, 0 R 430~6 BEDFORD MIDLAND, TEX 79701 BROWN, L W P.O. BOX 2328 MOBILE, ALA 36601 BUCKLEU, R E 1414 BEECH ST. S.E. DECATUR, ALA 35601 o LIST OF REGISTRANTS SEPTEMBER COMMON MEETING o SEPTEMBER 6-7-8, 1967 CINCI.NNATI, OHIO BUESKING, C W 4617 TAYLOR AVE EVANSVILLE, IND 47715 BUFE, 0 E 2300 CHESTER AVE CLEVELAND, OHIO 44114 BURGESON, J W 220 EAST UNION ST WHEATON, ILL 60187 BlJRGGRABE, W F 1400 SOUTH THIRD ST ST. LOUIS, MO 63166 BURNS, R A ALGOMA STEEL CORP LTD SAULT, ONT RIE CANADA BURRO~JS, H A PITTSBURGH, PA 15225 BYTHER, T E 31 OAK ST OLD TOWN, ME 04468 CAMPBELL, M 2240 SOUTH LONE PINE SPRINGFIELD, MO 65804 CAPLAN, F L 215 ROSE HILL AVE NEW ROCHELLE, N.Y. 10804 CARLSON, 0 R 5707 LINDENWOOD LANE FAIRFIELD, OHIO CARLSON, D M 327 S. FOURTH AVE ANN ARBOR, MICH CASTELLAN, N J DEPT OF PSYCHOLOGY I U BLOOMINGTON, IND 47401 o CEELY, F F 6206 BREN MAR DRIVE ALEXANDRIA, VA ;" 1,$1 k.. ' .; 48108 ,$, St$., ·,UL " ¥ I, W4S tiQJ4WA;;;Itc=*===== 22312 \l 1 I LIST OF REGISTRANTS SEPTEMBER COMMON MEETING SEPTEMAER 6-7-8, 1967 o CINCINNATI, OHIO CHAIKIN, A ,J 9300 GEORGE PALMER HWY LANHAM, MD 20034 CIPRIETTI, B J 34 IPSHICH PLACE HAMILTON, ONT CANADA CLARKE, J R 449 vJ. 5 T H ST CHILLICOTHE, OHIO CLARK, LA 3520 t.-.I. ROI.J~!TR FE SPRINGFIELD, MG CLARK, 1t.J i 45601 65804 H EDGE BROOK ROAD BINGHAMTON, N.Y. 13903 CLARK, A G 132 DAVIS STREET PAINTED, N.Y. 14870 CLEGG, J B 346 COMPTON RD CINCINNATI, OHIO 45215 4 c CLOSMAN, S 112 EAST POST ROAD WHITE, N.Y. COLE, C T 106 KATAHDIN DR POLAND, OHIO 44514 CONROD, R L P.O. BOX 208 BEDFORD, MASS 01730 COOPER, T USDAARSBSSARCBLDG226 BELTSVILLE, MD 20705 CORDING, B L 2705 DELLWOOD OR ORLANDO, FLA 32806 CORNELL, R L 41 37 BE AR0 AVEt-.HJ E SOU TH MINNEAPOLIS, MINN 55410 o LIST OF REGISTRANT5 SEPTEMBER COMMON MEETING o SEPTEMBER 6-7-8, 1967 CINCINNATI, OHIO COTTON, B W P.O. DRAWER G GRAPEVINE, TEX cox , 76051 R C 1429 KEED AVENUE BATON, LA CRAFT, J 70806 C 2109 NORRIS RD N.W. HUNTSVILLE, ALA 35810 CRUMB, H F 33 LIBERTY ST NE~' YORK, N.Y. 10045 CUM·M I NGS, L R FEDERALSBIJRG, MD C·' 21632 CUNNINGHAM, A J 25 MAIN ST ANSON I A, CO"IN 06401 DAGENFIELD, R L 1214 JAEGER ST COLUMBUS, OHIO 43206 DANZEISEN, L A WOODVILLE ROAD TOLEDO, OHIO 43601 DEAKIN, G R 302 MOUNTAIN DRIVE PEARISBURG, VA 24134 DECK, J C 661 CHESTNUT STREET VALPARAISO, IND. 46383 DEGENNARO, M G 175 OLD COUNTRY RO HICKSVILLE, N.Y. DEL n~lG, 11801 H SIBLEY STREET HAMMOND, IND 629 o 463~O DFr-...1JNG, J hI 3451 MCHENRY AVEf\!lJE CINCINNATI, OHIO 1~5 225 LIST OF REGISTRANTS SEPTEMBER COMMON MEETING SEPTEMBER 6-7-8, 1967 o CINCINNATI. OHIO DEUTSCH, E COMPUTER CENTRE GENESEO, N.V. DEWEY, 14454 G C 11444 LACKLAND ROAD ST. LOUIS, MO 63141 DICOSTANZO, J A P.O. BOX 390 POUGHKEEPSIE, N.Y. 12602 DONALDSON, D L 1570 WOODMAN DR 15 DAYTON, OHIO 45432 DONEGAN, A W 107 SMITHFIELD DRIVE ENDICOTT, N.Y. 13760 DONNELLY, M J 906 BELGIAN AVENUE BALTIMORE, MD 21218 DOUCETTE, J E 109 CHANDLER STREET BOSTON, MASS DOWD, 02116 C K LOCHEARN DRIVE BALTIMORE, MD ~711 21207 (1)RAY, R D 47 PAGE ROAD CHILLIcotHE, OHIO 45601 DUNSMORE, D It. 414 WALNUT STREET CINCINNATI, OHIO 45202 DUQUETTE, D J THl~D AVE & FORDHAM ROAD BRONZ, N.V. 10458 DWYER, J R 9321 E. 84TH TERR RAYTOWN, MO DYE • 0 R 40 SAWMILL RIVER ROAD HAWTHORNE, N.Y. 64138 o LIST OF o ReGISTRANT~ SEPTEMBER COMMON ME'ETTNG SEPTEMBER 6-1-8, 1967 CINCINNATI, OHIO EATON, T J 400 WASHINGTON AVENUE ST. LOUIS, MO 63102 EDWARDS, R A 112 E. POST ROAD WHITE, N.Y. 10601 ELWELL, W G 7030 STARR LINCOLN, NEBR 68505 ENYEDY, G AUBURN ROAD PAINESVILLE, OHIO 44077 FAERBER, R B 1266 AVALON DRIVE SAN JOSE, CAL 95125 FALCONELLO, P THIRD AVE & FORDHAM ROAD BRONZ, N.Y. 10458 FANUELE, V L 12 WILDWOOD DRIVE WAPPINGERS, N.Y. 12590 FELICE, L 1341 BALCOM AVENUE ~EW YORK, N.Y. 10461 FELLER, G G 1402 10TH AVENUE S.E. ROCHESTER, MINN 55901 FINCH, 0 G 3316 CROSS COUNTRY DRIVE WILMINGTON, DEL 19803 FISHER, J N 363 THIRD STREET CAMBRIDGE, MASS o 02148 FITZPATRICK, E 0 ILLINOIS ,STATE UNIVERSITY NORMAL, ILL 61761 FLEMING, C 0 P.O. BOX 34380 DALLAS, TEX 75234 LIST OF REGISTRANTS SEPTEMBER COMMON MEETING SEPTEMBER 6-7-8, 1967 o CINCINNATI, OHIO FO()OR, J E ENGINEERING BUILDING MADISON, WIS FOERSTER, C S 112 VALLECITOS WAY lOS CATOS, CAL 95030 FOLLAND, G H MILFORD, MICH 48042 FOLTZ, T V 4818 AVONDALE DRIVE FT. WAYNE, IND 46806 FORSTROM, R W 19401 DORAL COURT YORBA, CAL 0 FORTUNE, F C 19394 GULFSTREAM DRIVE TEQUESTA, FLA FOWLER, J G 3730 MEADOWBROOK DRIVE ZANESVILLE, OHIO 43701 ~, FRASER, W C 36 DOBIE MONTREAL, QUE FRASER, W I 21 ETON COURT CAMlACHIE, ONT CANADA FULLAN, 0 J 112 E. POST ROAD WHITE, N.Y. GABBERT, D A 2117 INDIANA STREET PARKERSBURG, W. VA GABRIEL, R F SOUTH ORANGE AVENUE SOUTH, N.J. 07079 GANATRA, J t
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:58:16-08:00 Modify Date : 2014:03:05 15:07:55-08:00 Metadata Date : 2014:03:05 15:07:55-08:00 Producer : Adobe Acrobat 9.55 Paper Capture Plug-in Format : application/pdf Document ID : uuid:549c76c9-f47a-0249-912b-3380d7e6eb4e Instance ID : uuid:94c8485c-7f84-3d4f-80ff-3930c4d2ff73 Page Layout : SinglePage Page Mode : UseNone Page Count : 566EXIF Metadata provided by EXIF.tools