Decuscope_Vol08_1969

download Decuscope_Vol08_1969

of 64

Transcript of Decuscope_Vol08_1969

  • 7/29/2019 Decuscope_Vol08_1969

    1/64

  • 7/29/2019 Decuscope_Vol08_1969

    2/64

    CONTENTS

    President1s Message ..Spring Meeting Reminder1969 DECUS Executive BoardDECUS European CommitteeDECUS Statistics for 1965 .A Remote Time Share Terminal WithGraphical Output CapabilitiesGRAPHAS .Software for Sale or LeaseLettersPrograms Avai lable from AuthorsProgramming Notes - LlNC-S, PDP-S

    PROGOFOP Modification to Use theType PCOl High Speed Reader/PunchModification to Random Number GeneratorGuide Call and Note on LlNC-SEvent Coun ter . . . . .

    General Purpose I/o Panel for a PDP-9A PDP-S/Paper Tape Reader Interface toSimulate Teletype Operation . . . . .

    DECUSCOPE HAS BEEN PUBLISHED SINCE APRIL1962 AND IS THE OFFI CIAL NEWSLETTER FO RDIGITAL EQUIPMENT COMPUTER USERS SOCIETY.IT IS PUBLISHED PERIODICALLY AT THE DEC USOFFICE, DIGITAL EQUIPMENT CORPORATION,MAYNARD, MASSACHUSETIS.TELEPHONE: AC617, 897-5111, EXT, 2414EDITOR: MRS. ANGELA J. COSSETTE, DECUSCIRCULATION: 4,600 COPIES PER ISSUE

    PAGE

    222

    3- 910

    13 , 1414

    lS19

    20

    PRESIDENT'S MESSAGEOn September 19and 20 I attended a DECUS European Seminarin Edinburgh, Scotland. I am happy to report that the meetingwas considered a success by all. There were about 150attendees, with liberal representation by DEC. John Oldfield, theArrangements Chairman, did a fine job in providing excellentaccommodations for the meeting at the Un iversity of Edinburgh.The meeting was run a long the! nes of the ,A,mericcn meetingswith appl ication papers and PDP-S and PDP-9 workshops. Mostof the papers this time were about work done on the PDP-S,since this is the dominent product line in Europe, but indications are the PDP-9 and PDP-l 0 papers will be forthcoming nexttime. John Hall, the Papers Chairman, had his hands full tryingto fit a large number of papers into a crowded agenda. Herethings differed from the American meetings in that al l paperswere distributed previous to the sessions. Attendees were thusgiven a chance to read the paper, and the oral presentationwas limited to five or ten minutes, and in some cases, not atall. At the end of each session the authors came forward toanswer questions from the audience. The sessions were run inparallel, and this met with some disapproval from attendees.Since many were interested in al l papers, it was recommendedthat future meetings be longer with no parallel sessions. It wasalso decided to continue with one meeting per year in Europebecause international travel restrictions are severe in somecountries.My trip was made possible by a recent decision of the ExecutiveBoard to provide funds from the DECUS treasury to enable th eDECUS President to attend th e European meeting each year, andto en a b I e the European Chairman to attend one Americanmeeting per year. It is clearly evident that this has been a wisedecision. The American and European DECUS organizationsare getting large and vigorous, and we simply must maintainclose ties. From th e quality of the papers presented, I wouldsay that there is I tt Ie di fference between th e workers on bothsides of the Atlantic.With the rapid growth of membership in Europe it is becomingclear that we need a Secretary there. Just recently, DECapproved th e hiring of a DECUS Secretary for Europe. She willbe headquartered in the Regional DEC office in Geneva. TheE u r 0 pea n DECUS Sec re t a r y wou Id work c lo s e ly withAngela Cossette and be responsible for serving the users in th eentire area.

    Richard J. McQuillin

    1969 SPRING MEETING"CALL FOR PAPERS REMINDER"

    The Spring DECUS Meeting will be held on May 12 and 13 atth e Colonial Statler Hilton Inn, Wakefield, Massachusetts.A IICall for Papers II was issued recently. Those planning topresen t papers should h a v e their abstracts into th e DECUSoffice by March 10. Sessions topics are: Biomedicine, Interactive Systems and Computer Graphics, Ed u ca t ion , HighEnergy Physics, Low Energy Physics, Digital Signal Processing,and Business Applications.

  • 7/29/2019 Decuscope_Vol08_1969

    3/64

    1969 DECUS EXECUTIVE BOARD

    PRESIDENT

    PROGRAMMINGCHAIRMAN

    MEETINGS CHAIRMAN

    Mr. Richard McQuillinInforonics, Inc.Cambridge, MassachusettsMr. Michael S. WolfbergMoore School of ElectricalEngineeringUniversity of PennsylvaniaPhiladelphia, PennsylvaniaProf. Ph iii P R. Bev i ngtonDepartment of PhysicsCase Western Reserve UniversityCleveland, Ohio

    EQUIPMENT CHAIRMAN Mr. Sypko W. AndreaeLawrence Radiation LaboratoryUniversity of CaliforniaBerkeley, CaliforniaRECORDING SECRETARY

    PUBLICAT IONSCHAIRMAN

    EXECUTIVE SECRETARY

    DEC REPRESENTAT IVE

    Dr. Daniel M. ForsythDepartment of PsychologyUniversity of VermontBur Ii ngton, VermontMr. George CooperLogic, Inc.Detroit, MichiganMrs. Angela J. CossetteDECUSDigital Equipment CorporationMaynard, MassachusettsMr. John A. JonesDigital Equipment CorporationMaynard, Massachusetts

    DECUS Statistics for Year 1968

    MEMBERSHIP

    New Appl icat ionsTotal Membership

    DelegatesIndividualsNon-Member ListTotal on Mailing ListDECUSCOPECirculationPROGRAM LIBRARY

    Number of programs submitted(l20-Accepted15-ln Process)

    1968 19671472 11893476 20081620 9251856 1049602 480

    4262 2488

    4600 2775

    135 127

    2

    1968/1969 DECUS EUROPEAN COMMITTEE

    CHAIRMAN

    PAPERS SECRETARY

    ACCOMMODATIONSECRETARY

    COMMITTEEMEMBERS

    Mrs. Gillian D. SpittleStrand Hote Is Ltd.12 Sherwood StreetLondon W. 1, EnglandMr. John HallRoom G09Building 443AERE Harwe II DidcotBerkshire, EnglandMr. Birger KvaavikThe Axel Johnson Institutefor Industrial ResearchNynashamn, Sweden

    Dr. John ElderDAMTPSilver StreetCambridge, EnglandDr. Hans-Jurgen T ebstPhysics InstituteTandem Lab.Erwin-Rommel-Str.1D-852 Erlangen, GermanyDr. Chris MalpusDepartment of PhysiologyUniversity of LeedsLeeds, England

    Tota I number of programs in library 428 294Number of programs obsolete 5 8

    Number of requests fi lied 1712 950Number of programs involved inrequests 10,272 4655Number of tapes involved inrequested programs 30,861 8815

    Paper tapes 30,504 8690DECtapes and LlNCtapes 357 125Approximate number of paper tapesreproduced and verified 31,000 9300DECUS MEETINGSAttendance FiguresCanadian 103 70European 150 (approx . ) 110Spring 270 197Fall 390 200

  • 7/29/2019 Decuscope_Vol08_1969

    4/64

    A REMOTE TIME SHARE TERMINAL WITHGRAPHICAL OUTPUT CAPABILITIES

    S. Pardee and P. E. Rosenfe IdBell Telephone laboratories

    Whippany, New JerseyFor some time, users of time-shared computers have felt th eneed for a low-cost graphical output device that could belocated next to any remote terminal. The device must be ableto draw both characters and vectors and to complete a pictureof reasonable complexity fast enough so the user will not beinclined to take a coffee break whenever new output is beingproduced. All this while working over a dialed-up telephoneline at a 11 a-baud rateTwo major problems had to be solved in order to make thisdevice a reality. First, an inexpensive output device wasrequired that could handle both characters and vectors atspeeds greater than can be achieved by mechanical plotters.Second, it was necessary to reduce the transmission time ofpictorial information from the central computer to the remoteterminal.Within the last year two solutions to th e first problem havebecome available. On e is the large screen storage scope; theother is a hard-copy system that uses a conventional CRT toexpose a dry-si Iver paper. At present th e storage scope issomewhat less expensive and considerably smaller in size thanthe hard-copy device. It also is somewhat faster, as the latterdevice does not allow the output to be viewed until the paperhas been passed through a 15-sec developing cycle.The solution to the second problem has also appeared recently,in the form of a small, ",.expensive computer, such as th ePDP-8/L. Placing a small computer at th e remote terminalhelps to solve the transmission bandwidth problem in the following ways:1. The computer can be used as a character generator and avector generator, thus allowing information to be transmittedin an efficiently encoded format rather than in an incrementalmove form which is quite inefficient.2. If the picture is stored in the memory of the small computer before it is drawn on the output device, itwill be possibleto transmit the graphical data in a structured form, makingit more compact and thereby further reducing the transmissiontime. By stru ctured form we mean the use of graph ica I subroutining, so that an element of a picture need be transmittedonly once regardless of the number of times it appears in thepicture.3. By allowing the large central computer to specify wherethe graphical material it sends is to be stored in the memoryof the small remote computer, tt becomes possible for thecentral computer to edit a picture which is stored in the re mote computer. Thus if th e picture which is presently desireddiffers only slightly from the last one that was received, onlya small amount of new data need be transmitted.In addition to increasing the transmission efficiency, the smallcomputer provides several ot'her desirable features. One isthe flexibility of a programmed controller as opposed to a special purpose hard-wired device. This allows the operation ofthe terminal to be easily modified i f necessary. Another is the

    3

    possibility of storing several pictures simultaneously in th ememory of the small computer, and allowing the user to lookalternately at one and then another. This should be helpfulin determining if th e job is proceeding in the right direction.This last feature becomes unnecessary, of course, if a hardcopy device is used instead of or in addition to the storagescope.HARDWARE CONFIGURAT IONA term ina I as descr ibed above is now under constru ct ion atBell Telephone laboratories, and programming for both th esmall and the large computer has begun. The terminal consists of a PDP-8/l computer with an ASR3.3 Teletype, a Tektronix 611 storage scope, and a type 103 DATA-PHONE dataset. The scope and the dataset are interfaced to the computeusing Digital Equipment M-series modules. The scope interface consists of a la-bit x register and 0/A, an l l-b it Yregister and 0/A, and a Z-axis control. The origin of thecoordinate system is th e lower left-hand corner of the scope.Va Iues of X may range from a to 102310 and of Y from a to 143because of the aspect ratio of the 611 scope. The datasetinterface consists of serial-to-parallel and parallel-to-serialconverters, timing and control circuits, and a circuit thatchecks for odd parity. The terminal is built into a standarddesk-type console as shown in Figure 1. Consideration wasgiven to replacing the ASR33 with an electronic keyboardand using the storage scope to monitor keyboard activity.However, in order to do this it would have been necessary to remothe primary display from the storage tube when keyboard activity is allowed and this was considered undesirable.

    CHARACTER AND VECTOR GENERATIONAs indicated earlier, the PDP-8/l is programmed to performthe functions of character and vector generation. Characterswill be formed on the storage tube us i ng a 5 x 7 do t matr ix ,centered on the current electron-beam position. The computeprogram wi II cause the beam to move in a fixed sequencethrough the 35 positions of the matrix, intensifying the appropriate positions to form th e desired character. Three of thePDP-8/L l s 12-bit words will be required to store the intensification pattern for each character; thus 288 memory locationswill suffice to store a font of 96 characters. The program toscan the bean through the matrix and intensify it where necessary is expected to take approx imate Iy 10010 instructions, sthe entire character-generation routine will fit in about 400 1words.Seal ing and rotation of the characters wi II also be provided.At scale 1 the characters will not be resolvable, so this scalewill normally not be used. Scaling from 2 to 63 will be provided. Rotation of the characters by 900 in the positive direction will facilitate the labeling of graphs.Character spacing will be automatic and will be equal to 6spaces in the character matrix. The receipt of a line feedwill cause an automatic carriage return as well as spacingdown 10 spaces in the character matrix. The left-hand margin wi II be taken as the last position of the electron beambefore entering the character mode.Vectors wi II be produced by generating a sequence of pointswhich best approximate th e desired vector. The number ofpoints will be equal to the magnitude of the major component.

  • 7/29/2019 Decuscope_Vol08_1969

    5/64

    OPERATION MODESThe terminal will have two modes of operation: Teletype-writer and Graphic, between which it will switch back andforth. In the Teletypewriter mode the user will communicatewith the remote computer via the TELETYPE, with the PDP-8/lacting as a transmission path for ASCII codes between the ASR33and the remote computer. When the PDP-8/l receives a speci a I control character from the remote computer it wi II switchto the Graphic mode, and stay in this mode until another spe-

    The first mode, which is entered by issuing the control character 034 (FS), is called the Graphical Character mode. Inth is mode, a II characters re ce ived after the code 034 andbefore either of the other two mode-changing control characters are interpreted as ASCII symbols and drawn on the faceof the storage scope as such. This allows al l 96 printing characters to be drawn on the scope. In addition, the scope wi IIrespond in the normal manner to carr iage return a nd new line(line feed).

    cial control character switches it back to the Teletypewriter The second mode, which is entered using control charactermode. While in the Graphic mode, ASCII code characters received 035 (GS), is called the Graphical Master mode. In this mode,from the remote c omputer wi II be interpreted as either graphi ca I com- the succeeding characters are interpreted as graph ica lop-codesmands or data, and will be stored in the memory of the 8/L. and data. An ASCII character is treated as an op-code if itsAnother program running in the 8/l will then interpret the most significant bi t is a 0 and data if it is 1. Since the ASCIIstored graphical data and form a picture on the storage tube. characters ar e seven bits (plus parity) and one bi t is used toIn the initial version, two buffer areas in the 8/l memory will differentiate between op-codes and data, only six bits can bebe used to store pictures. These buffers will normal ly be used used for data. For those situations where 12-bit data wordsalternately, thus allowing the user to view either of the two are required, 'two data characters are assembled in the 8/lmost recently transmitted displays. However, the user will as shown in Figure 2.also be able to alter the sequence in which the buffers areused and thus save the contents of one buffer indefinitely.When the complexity of a picture becomes so great that it willno longer fit in one buffer, both buffers wi II be combined toform one large one. In the event that a picture is too complex to fit into memory it will still be displayed on the scope,but the complete picture will obviously not be available forlater regeneration.GRAPHIC TRANSMISSION FORMATAs mentioned before, upon the receipt of a special controlcharacter, the term ina I will go into the Graph i c mode and inter-pret succeeding characters as graphical op-codes and datauntil it receives a control character instructing it to leavethe Graphic mode. Actually, there are two Graphic modesand therefore three special control characters.

    Where negative numbers are required, they will be transmitted in sign and magnitude form (standard PDP-2/s campi iment form).The code used to leave the Graphic mode and return to Teletypewriter mode is 021 (DCl).

    In the I st of op-codes that follow, the subscript H impl ies thesign and 5 high-order bits of a 12-bit data-word and the subscript l implies the 6 low-order bits. The op-codes are givenas octal numbers that represent a particular ASCII character.

    PD p-8/l WordFIGURE 2

    4

  • 7/29/2019 Decuscope_Vol08_1969

    6/64

    CONTROL OP CODESSET POI NTER This op-code is followed by two

    data characters that define a12-bit address in th e PDP-8/Lmemory. This op-cod"e instructs;the PDP-8/L to. start storing th epicture information at th e transmitted address.

    ASCII Sequence:040, Address H' Address L

    BEG IN PICTURE This op-code is followed by twodata characters that define anaddress where a picture begins.The PDP-8/L will start interpreting information at that ad dress.

    ASCII Sequence:041, AddressH' Address L

    SUB JUMP This op-code causes the picture

    ERASE This op-code causes the picturepresently being displayed to beerased. It does not affect thecontents of the PDP-8/L memory

    ASCII Sequence:046

    REPEAT Thi sop-code is followed by twodata characters that, takentogether, indicate the number

    ASCII Sequence:

    of times that the sequence of opcodes that follow is to be displayed. The sequence is terminated by an END REPEAT op-co

    047, NH, N L, ..... Op Codes . . ,050END REPEAT See Repeat

    ASCII Sequence:050

    processing program in the PDP-8/L BEAM POSITIONINGto jump to a graphical subroutine.The location in memory of the SET X This op-code is followed by two

    data characters that are combined to produce a 10-bit Xaddress. The blanked beam ispositioned to the new X address.Y position is unchanged.

    ASCII Sequence:

    beginning of the subroutine isconveyed in th e two data char-acters that follow the op-code.The address of the op-code thatimmediately follows the SUBJUMP is stored in the locationcorresponding to the transmittedaddress. Picture process ing continues at the transmitted address+1.

    042, AddressHI Address LJUMP INDIRECT This op-code causes picture

    processing to continue from th eaddress contained in the locationcorrespond ing to the transm ittedaddress. This is primarily usedto return from a subroutine.

    ASCII Sequence:

    JUMP

    ASCII Sequence:

    END OF DISPLAY

    ASCII Sequence:

    0431 AddressHI Addr ess L

    This op-code is followed by twodata characters defin i ng th ememory location where pictureprocessing should continue.

    044, AddressH, Address LThis op-code causes pictureprocessing to be terminated.

    045

    5

    ASCII Sequence:

    SET Y

    ASCII Sequence:

    SET XY

    ASCII Sequence:

    Similar to SET X bu t for Yposition.

    Similar to SET X except thatfour data characters are transmitted. The first two are the Xposition the last two are the Yposition. The blanked beam isrepositioned to the new X, Yaddress.

    INTENSIFY Causes the beam to intensify atits present position.

    ASCII Sequence:054

    SINGLE COMPONENT VECTORSVISIBLE X This op-code is followed by two

    data characters that taken

  • 7/29/2019 Decuscope_Vol08_1969

    7/64

    ASCII Sequence:

    together represent a signed 10-bi t vector length (LV

  • 7/29/2019 Decuscope_Vol08_1969

    8/64

    code. The effect of the ROTATEcommand is to rotate the text oTORQUE VS. RPM(SHELBY COBRA)

    othrough an angle of +90 . g r - - - - - - - - - - . - - - - - - - - , - - - - - - - - r - - - - - - - ~ - - - - - - - - -ASCII Sequence: 070

    NO-OP Op-codes 71 through 76 arespares and 'vvi! 1 be assigned asneeded in the future.

    ASC II Sequence: 077EXAMPLE OF A GRAPHIC TRANSMISSIONAs an example, consider what information wou Id be transmitted to display the picture shown in Figure 3. This picturecould be transmitted by sendins the following data:

    o o

    OP-CODES & DATAMASTER MODE

    NO. OF CHAR.1

    SET POINTERADDRESSERASESET XYXYREPEAT6VIS. Y!::'YINVIS. Y-tNINVIS. XfiXEND REPEATSET XXREPEAT4VIS. XI1XINVIS. X-fiXINVIS. YI1YEND REPEATSET XYX

    2

    22

    212

    2

    2

    2

    2

    21212

    22

    7

    234RPM (X1000)

    FIGURE 3 GRAPHIC EXAMPLE

    COMMENTS

    Position beam to leftend of the abscissa

    Draw vert i ca I lines ofcoordinate grid

    Reposition beam to origin

    Draw hor izonta I lines ofcoord i nate system

    Position for text

  • 7/29/2019 Decuscope_Vol08_1969

    9/64

    OP-CODES & DATA NO. OF CHAR. COMMENTSY 2CHAR MODE Next 30 characters incharacter display modeTORQUE sp VS. sp RPM n 1 29(SHELBY sp COBRA)MASTER MODESET XYX 2 Position for AbscissaY 2 LabelCHAR MODE Next 26 characters incharacter display modeospspspsp 1 spspspsp 2 spspspsp 263 spspspsp 4 spspspsp 5MASTER MODESET X, YX 2 Position of Abscissa TextY 2CHAR MODE 1 Next 11 characters incharacter modeRPM sp (Xl 000) 11MASTER MODE 1XET X, YX 2 Position for OrdinateLabelY 2ROTATE 1 Rotate the following 200characters by 90CHAR MODEospspspsp 100 spspsp 20200 spspsp 300MASTER MODESET XYX 2 Position for Ordinate TextY 2ROTATE Rotate next 16 charactersCHAR MODETORQUE sp (FT/LBS.) 16MASTER MODE 1SET XX 2 Reposition at originLINE PLOT6.X 2YO 2Y1 2Y2 2

    8

  • 7/29/2019 Decuscope_Vol08_1969

    10/64

    OP-CODES & DATAY3Y4Y5

    NO. OF CHAR.2

    COMMENTS

    END DISPLAYBEGINADDRESSTTY MODE

    Total Characters

    At Teletypewriter speeds this would require ::::;- 20 seconds fortransmission and display. If the 1200 bit/sec line capabilitywere used, it would require about 2 seconds to transmit thegraph. It should be noted that the vast majority of transmission time was devoted to setting up the grid and labelingthe axes. If a second plot were to be sent that uses the samegrid and labeling, which is often the case, only the curvewould have to be retransmitted since the grid has been savedin core. In that case a new curve could be transmitted in2.0 seconds or 0.20 seconds depending on the bandwidthavailable.

    22

    2

    202

    9

    CONCLUSION

    The Graphic Display System described above meets the requ iments outlined at the beginning of this paper: Namely, lowcost, efficient transmission codes, flexibility, and the abilitto store and retrieve pictures for redisplay. In addition it isfully compatible with ASCII transmission codes and, therefocan be substituted in place of any ASR33 or ASR35 Teletypewriter presently being used in con junction with a time-sharinsystem.

  • 7/29/2019 Decuscope_Vol08_1969

    11/64

    GRAPHAS: A MODIFICATION OF GRAPHAKarl Lowy and Sandra Furman

    University of RochesterRochester, New York

    The L1NC-8 graph assembler Grapha is very useful for labeling of graphs and displaying data in curve and histogram formon the osci IIoscope . It appears, however, inconvenient foroscilloscopic demonstration of an appropriately scaled coordinate system and display of data in less conventional form,e.g. those consisting of a set of discrete points.Graphas incorporates the following modifications of Grapha:1. It is avai lable through LAP-6.2. It permits a display of a coordinate system with individually variable scales for abscissa and ordinate.3. If an extended memory is available, the program permitsdisplay of data contained in four consecutive blocks of tapeaccording to the user's choice. The first two blocks containthe abscissae, the last two the ordinates of points to be individually displayed. Registers containing no entries are notdisplayed so that the solid zero line is absent when the graphis projected.Graphas retains al l features of the original program but wasnot written to include the plotting subroutine.

    10

    Scale, figure and labels can be displayed simultaneously aswell as individually, a feature helpful for the photographicprocedure.As an example, figure 1 displays the input-output character isti cs of a pu Ise-generator devised for use under computer con-trol. 1 The linear range of the generator is well characterizedand the tracing is seen to be free from a heavy and mean ingless zero line.

    REFERENCES1Karl Lowy and Lawrence Ota. Pu Ise generator with externalampl itude control by computer. Electroenceph. cI in. Neurophysiol., in press, 1968.

    ACKNOWLEDGEMENTSThis work was supported in part by a Public Health Serviceprogram project grant, NB 06827.This paper was schedu led to be presented at the Spring Symposium, however, circumstances arose preventing it from beingpresented and also was not received in time to be publishedin the Proceedings.

  • 7/29/2019 Decuscope_Vol08_1969

    12/64

    SOFTWARE FOR SALE OR LEASESUBMITTED BY

    DECISION SCIENCE, INC.

    Decision Science, Inc. is offering for sale its SIMUL8S programming system consisting of an assembler for and a simu latorof the PDP-8/S, PDP-8, PDP-8/!, an d PDP-8/l; this availablefor the IBM 360/40 or larger, 7090, 7094; CDC 3600, 6400,6600; Univac 1108 or GE 635.Specifically, S IMUL8S permits programming uti I zing cardsrather than paper tape, thus simpl ifying deve lopment and programming changes. It provides additional debugging aids tothe programmer in that program tracing under on/off timingcontrol, time dumps, and coredumpsare availableduringexecution. This time analysis feature can be used to determinethe execution time between two points in the program, thisbeing usefu I to determine compatibi I ty with real time problems.Complete pro g ram development can be achieved by usingS IMUL8S for diagnostics, assembl ing, debugging, executingthe program, and/or providing a binary paper tape for directread in by th e PDP-8 series computer, thus eliminating sourcepaper tape punching, assembly and debugging on the smallercomputer. S IMUL8S permits software development prior to th einstallation of the PDP-8 series computer or while it is in useperforming its dedicated function.It can be used to simu late proposed systems for eva luation,thorough checkout of programs by simu lating '-worst case I conditions since it allows simulation of interface equipment andsignals difficult to generate with hardware.The input language to cards and the printed output includesthe basic format and features of the PAL III assembler as wellas the page I nkage feature of MACR0-8.

    For more information contact:Dr. A. J . Owens, Vice PresidentDecision Science, Inc.4508 Mission Bay DriveSan Diego, California 92109

    Submitted ByGRASON-STADLERCOMPANYSCAT (State Change Algorithm Terminology) is a conversational, -;:-eal t i ~ e , time "Sharing, p r ~ c e s s control system designedto run on a 4Kor larger DEC (Digital Equipment Corporation)PDP-8 computer which is interfaced to a Grason-Stadler "JobControl Multiplexer. IISCAT software consists of two major parts. The first is theExecutive and th e second is the SCAT Language Processor . TheExecutive administers the use of the computer. It divides theprocessor time between th e various experiments, or jobs, andthe Teletype and other output devices. It allocates storagespace for the various programs which are active. The SCAT

    11

    Language Processor is itself divided into two sections--thSCAT translator and the SCAT interpreter. TheSCATtranslatoaccepts the SCAT statements which form the experimentadescription (the program), checks them for internal consistencand translates them into a code which th e SCAT interpreteunderstands. The SCAT interpreter controls each experimenusing the user generated program for guidance.

    For more information contact:Mr. Steven J. StadlerGrason-Stadler CompanyBox 2West Concord, Massachusetts 01781

    Submitted ByINFOCOM, Inc.

    INFOCOM, Inc. is offering for sale its SAIBOL CompileThe compi ler re sembles a COBOL compi ler, but was designespecifically for the PDP-8 Familyof computers. Although thsystem has been especia lIy designed for business oriented appl ications, such as Payroll, Job Costing, Accounts ReceivableAccounts Payable, General Ledger and Inventory Control, can be equally effective for scientific programming as welSAIBOL is an interpretive compiler which allows any PDP-Family computer to function as a character-oriented machineIt is designed to reside in a 4K PDP-8 with optional DECtapeDECdisk, high speed paper tape reader and punch and anASR-33 Teletype. It is core-resident, requ iring about 3K ocore. The remaining 1 K is available for the user programstatements.Some important features include:1. The system includes a Monitor which allows user programto be stored on disk.These programs may be called into core via keyboard commandsThe language includes six classes of commands:

    a. Input/Output - for entry of data v ia keyboard anpaper tape, and outputt i ng data to pr inter and paper tapeb. Arithmetic - fo r loading, s to r in g , adding, subtracting, multiplying, and dividing quantities representedas BCD digit strings, and testing the result of arithmetioperat ions.c. String manipu lation - for moving and co m par i n gstrings of alphanumeric characters.d. File - for fiI ing and retrieving records of informationon and from disk storage.e. Monitor - for c a II in g the Monitor, or requestingother programs on disk in the event of segmented programs

  • 7/29/2019 Decuscope_Vol08_1969

    13/64

    f. PAL Language - Routines in the PDP-8 PAL" Iassembly I an g u age can be freely intermixed with SAIBOLstatements.

    The SAIBOL interpretive compiler is a core-resident interpreterwhich analyzes user statements stored in core. As each statement is analyzed, it is executed by SAIBOL, and the next statement is then accessed.The SAIBOL interpreter is stored in the upper 23 pages of core.Page 0 is a Iso used in part by the system for common storageand monitoring purposes.

    The rest of core (locations 200-2177) is both word-addressableand character addressab Ie. Characters are represented by sjxbits, an d packed two to a word. The character in the highhalf of the work (bits 0-5) is defined as the first character,and the character in the low half of the work (bits 6-11) isdefined as the sec 0 n d character. Thus, user core can beaddressed as words 200-2177, or characters 400-4377.

    2. Easy to Use and Learn - SAIBOLis conversational in modethrough the Teletype. SAIBOL will tell you where you wentwrong and how to fix it; a tru Iy turnkey system.3. Easy to Interface - SAIBOL wi II interface to nonstandard1/0 devices, i . e . , if you require upper and lower case printing,color change and a variable width carriage, then SAIBOL willle t you talk to a Flexowriter.4. Precision - Data Fie Ids are accurate to 10 significantdigits (ideal for accounting purposes).5. Internal Power - Interpretive picture strings to direct datamanipulation, editing and calculation.Programs Available from INFOCOM, Inc.1. Payroll - provides complete payroll accounting, from themaintenance of the basic employee pay ro l l records to thepreparation of checks, W-2 Forms and 941 Forms.2. Jo b Cost Analysis - providesan easy means of distributinglabor and material costs across the appropriate departments foreach job, with a complete profit report including the preparation of invoices if desired.3. Accounts Payable - provides complete accounts payableaccount from the maintenance ofthe Master Vendor File to thepreparation of checks an d the generation of a Check RegisterFile.4. Accounts Receivable - provides complete accountsreceivable accounting for daily updating of the accounts receivableaccounts, billing, credit analysis, an d activity reporting.5. Inventory Control - providesa complete inventory controlaccounting system from the recording of all inventory transactions to the preparation of a Cost of Sales Report.6. General Ledger - provides for classification, summarization, an d recording of the cumulative effects of all transactions on assets, liabilities, revenue and expenses.

    12

    7. Displayand Classified Ad Bi II ing (Typesetting) - providea complete display and classified billing system. Informationprepared on off-line keyboards isreadvia the high speed papertape reader and is stored an d manipulated as required.8. Circu lation Package (Typesetting) - provides an integrateddraw and billing system for all editions of one or more newspapers. Inputs may be entered on-I ine , or prepared off-I i neon punched paper tape and entered vi a high speed reader.INFOCOM's newly formed MachineTool Products Division inLos Ange les is offering a complete I ne of programs for thepreparation of tape for numerically controlled machine tools.NC programs may be used in conjunction with INFOCOM'sbus iness programs.Programs Available for NC are:1. Two an d three axis point to point and two axis contouringprograms for basic PDP-8/1 or 8/L configurations.2. Wire wrap program providing tapes for numerically controlled, hand aided, wire wrap systems. Program allows defin it ion of pane I layout an d use of standard wire I st informationas input.3. Full three axis APT language contouring software for ex panded PDP-8/1 and 8/L. Requires 8K core, 262 disk, highspeed paper tape I/O.4. APT-III implemented on PDP-l0.For more information contact:

    Mr . William LandisINFOCOM, Inc.20 Walnut StreetWellesley Hills, Massachusetts 02181

    EXCERPT FROM A TYPICAL SAIBOL-8 PAYROLLPROGRAM WITH NO COMMENTS

    NEXTRECORD, READ 21 5 WRONGTAPEHRS, ACCEPT HOURS HRS

    TAKING REGHOURS MULTIPLY RATEGIVING REGPAY 2 NOSIGNTAKE OVRHOURS MULTIPLY RATE MULTIPLYOVERTIME GIVING OVRPAY 2 NOSIGN

    EXCERPT FROM A TYPICAL SAIBOL-8 PAYROLLDOCUMENTED WITH COMMENTSNEXTRECORD, READ(EMPLOYEE'S PAY RECORD. IF MORE

    THAN) 215 (CHARACTERS, GO TO) WRONGTAHRS, ACCEPT (REGULAR AND OVERTIME) HOURS (IF

    FORMAT ERROR, GO TO) HRSTAKE REGHOURS (AND) MULTIPLY (BY) RATEGIVING REGPAY (WITH) 2 (DIGITS TO LEFT OFDECIMAL POINT AND) NOSIGN

  • 7/29/2019 Decuscope_Vol08_1969

    14/64

    LETTERS

    "Miss Margaret NobleSoftware Qual ity ControlDigital Equipment Corporation146 Main StreetMaynard, Massachusetts 01754"Dear Miss Noble:"In attempting to se t up a system using the double precIsIonfloating point trigonometric subroutines, we have discoveredthe following errors."In the sine subroutine, there is an improper entry for C7. Inthe LI NCtape manuscript, the decimal value of this number iscorrectly stated as -.004362476, but the DBLFLT value shou Idbe:

    777056103161

    not777056102521

    "The arctangent subroutine combines two subroutines in onejumble with nonsense as the result. To ge t a properly workingarctangent subrout ine , take the cod ing on page 17 of theDBLFLT write-up DEC-L8-FLAA-D and make the followingchanges:(1) On line 3L+7, replace "ADD 4A+1" with "ADD 4F+1".(2) On line 3M-3, replace "4K[n/2" with "4H [0.0".(3) Eliminate lines 3M through 3M+3. They calculate thetangent, not the arctangent.(4) Tag the I ne immediately following this deletion with #3M.The three three-place locations tagged 4A, 4B, and 4K maybe eliminated since they are now unnecessary. The decimalvalue listed forC5shouidaiso be corrected to read 0.1801410;the DB L F L T entry for this constant is correct as it stands."The write-up on the arctangent subroutine should read asfollows:"The arctangent of X (over the interval 0 < X < co} maybe calculated using the following approximatio-;; from Hastings:

    579arctan ~ 7 T / 4 + C1Y + C3yV + C5Y + C7Y + C9Ywhere

    C1 = 0.9998660C3 = -0.3302995C 5 = O. 1801 41 0C7 = -0.0851330C9 = 0.0208351

    and Y = X - 1X+T13

    liTo use this subroutine, store the value of X n the three locationsbeginningatTag 4Fand jumpto the subroutine at3L. Thesubroutine returns to the main program with arctan X in the FAC"We wouldbe most pleased if these corrections could be listedin the software news section of the next issue of DEC USC OPESincerely yours,Pau IF . Su II ivanTechn ica I Support Group"National Aeronautics and Space AdministrationElectronics Research CenterCambridge, Massachusetts

    "Dear Angela:"This is in reference to the problem that we have been havingwith the DECUS 8-124 card decks. Perhaps others may benefifrom our experience."Most of our computers, keypunches, and auxilliaryequipmentuse the old 48 character FORTRAN card code. The deck thayou ha ve suppl ied was coded in a 48 character subset of thenewer EBCDIC (extended binary coded decimal interchangecode} used by IBMon their 360series and by some other manufacturers. This code differs from the old code in only a fewcharacters and these are I sted below.

    Symbol Old F Code+ 12

    3- 812-4-8

    0-4-84-8

    Very tru Iy yours,Lawrence Leipuner"Brookhaven National LaboratoryAssociated Uni versities, Inc.Upton, L. I. , New York

    WANTED

    EBCDIC12-6-86- 8

    12-5-811-5-85- 8

    Information re lative to interfacing a PDP-8 to a small 40 ampi ifier analog computer.Contact: Dr. Martin

    Mount Sinai HospitalCleveland, Ohio

  • 7/29/2019 Decuscope_Vol08_1969

    15/64

    "Dear Mrs. Cossette:"This is a general request for information as to the existenceot business programs written for the DEC family-of-eight computers. Of special interest are the type of programs whichwill retrieve information stored in character form on disc ortape, and do statistical studies, generate payroll checks, business reports, etc."In addition, does anyone know of a business-oriented compi le r written for these machines whi ch wi II allow a person towrite his own business programs in a high level charactermanipulating language?Sincerely,David A. StarrComputer DepartmentLIBERTY INDUSTRIES CORP.1057 East 3300 SouthSalt Lake City, Utah 85106"

    "Dear Mrs. Cossette,

    "As a final year project in Electronics I hope to design anddevelop a simple CRT display for the College PDP-8. I wi IIbe using a conventional osci lIoscope and a single cycle databreak to generate a possible displaywith short vector and pointmodes, as used in the 33 8 system."I would be most interested to hearfrom anyone with a simi la rproject in mind."Thank you,Yours sincerely,David WhiteleyStudent Apprentice"Staffordshire College of TechnologyBeaconside, StaffordENGLAND

    "Dear Mrs. Cossette:"I would appreciate hearing from anyone whoa . has used the PDP-8as a recirculating memory for spectralanalysis purposesb. and/or has had experience in interfacing a PDP-8 with anEAI-680 analog computer.

    Yours sincerely,

    Dr. Den is PoussartElectrical Engineering DepartmentFacu Ity of SciencesLaval UniversityQuebec 10 , P.Q. CANADA"

    14

    PROGRAMS AVAILABLE FROM AUTHORS

    COMPUTER - PDP-8/338Title: Core Display ProgramAuthor: A. M. Romaya, English Electric Computers Limited,

    Kidsgrove, Stoke-on-Trent, Staffordshire, EnglandThis program allows the user to display, change, dump andpunch the contents of any core location by commands in itiatedfrom the 338 display I ght pen an d push buttons. The programoccupies locations 5.0.0.0-7340 of memory field one. The program does not se t th e push down pointer or the interrupt systeman d hence field.0 is absolutely free for use by other programs.It is possible to run this program concurrently with anotherwhich uses the interrupt system. (Th is second program shou Idno t use the display unless in special modified cases.)Recently, the program has been extended to include a coretransferfacility, Hence, it is possible totransfer ablock withstart address A an d end address B to another part of memorywith start address C. Th is transfer is from on e fie Id to anotheror within each field.

    Minimum Hardware: 338 Display System, Character Generator, 8K store, High Speed Punch (optional)

    Title: Drawing Appl ications ProgramAuthor: A. M. Romaya, English Electric Computers Limited,

    Kidsgrove, Stoke-on- Trent, Staffordshire, EnglandTh is program is intended to show the faci I ties the DEC-338Display System offers when considered as a drawing board.The program a lIows th e user to :1. Draw straight lines or "freehand" over a total of 75 x 75inch area.2. Includesymbolswhichmaybe formed by means of th e pro-gram.3. Label the drawing in alphanumeric an d other characters.4. Delete items drawn.5. Output the display and symbol files created.6. Input a display file and its symbols for updating.The program incorporates a tracking cross and raster, and thecoordinates of the tracking ar e shownwhen required. Controlis obtained bya setoflight buttons, push buttonsan d theswitchregister.Possible cor e location changes for adapting the dimensionsdrawn to special cases are included in the write-up for th eprogram.

    Minimum Hardware: 338 Display System, Character Generator

  • 7/29/2019 Decuscope_Vol08_1969

    16/64

    PROGRAMMING NOTESLlNC-B and PDP-B

    To L1NC an d L1NC-8 LAP6 Users:

    Washington Un iversity's Computer System Laboratory issued acorrection to LAP6 thereby creating LAP6A. LAP6-3L usersshould refer to SOFTWARE NEWS for instructions to modifyLAPo-3L into LAP6A-3L.If you do not use LAP6-3Land did not receive the notice fromWashington University you may write to DECUS, WashingtonUn ivers ity, or exchange LAP6 master tapes for LAP6A tapesby mailing your tapes to Computer System Laboratory, 724South Euclid Avenue, St . Louis, Missouri 63110.

    PROGOFOP MODIFICATION TO USE THE TYPE PCOlHIGH SPEED READER/PUNCH

    Glen W. JohnsonInstitute of Oceanography

    Dalhousie UniversityHalifax, N. S., Canada

    A modification to T Y PElT of PROGOFOP a p pea red inDECUSCOPE, Vol. 7, No . 1 (1968). This modification hasbeen tried hereand itdoesnotseem to work completely. Wheneither RETURN or LINE FEED is typed, the computer reachesthe RENI NT subroutine without restarting the LI NC an d when

    no more interrupts are to come. Since we have an alternatemethod of punching binary tapes, we have not looked for thesolution.Ou r L1NC-8 has a PDP-8 option, the Type PCOl high speedreader/punch. The following patch I sting defines the operatecomman'ds OPR J) an d OPR 1. It requ ires a II of the uflusedspace in page z e r o o f PROGOFOP except th e auto- indexreg isters.OPR J): PUNCH the character in the L1NC A register (bits4 to 11) on th e high speed punch. It does not wait for thepunch to fin ish.OPR 1: READ the next character from th e high speed readerand wait until the character has been obtained. If the powerwas off, or there was no tape present (run out or not entered),the number 7777 is put in th e LI NC A reg ister for program information. If a second command is given while no tape ispresent, th e number 377 appea r s in th e L1NC A register.

    The next L1NC command after OPRl should then be APO(i) tocheck the sign since the sign bi t is normally zero.If the power was off, turn the reader onand restart th e PDP-8at address 0200 (8) to initialize the reader. Then the L1NCmay be restarted as needed. If the tape was missing, correctthe problem as needed and restart th e L1NC.

    IPROGOFOP PATCH TO DEFINE aPR 0 =PUNCH ON HIGH SPEED PUNCHI aPR 1 =READ TAPE ON HIGH SPEED REIIF TAPE IS NOT IN R E A D E R ~ LINC ACC IS SET TO -0IIF A SECOND OPR 1 COMMAND IS GIVEN" 377 IS PUT IN LINC ACCIGLEN JOHNSON" MAY 1" 1968IDALHOUSIE UNIVERSITY" HALIFAX" NOVA SCOTIA" CANADA.GOBACK= 1460OPRATE=1432ACTOA=1457!.l\AC= 61 71I A C ~ = 6 1 6 7

    *120OPRDO" TAD 8JMP I OPSORT+13 ISET UP JMP

    OPSORT"

    D C . ~ . + 1oDOPUNDOHSROG08ACKG08ACKGOBliCKGORAGKGOBACKG08ACKG08ACKG08ACKGO BACK

    IWILL BE JMP I OPSORT + NIOPR 0 -HIGH SPEED PUNCHIOPR 1 -HIGH SPEED READER

    15

  • 7/29/2019 Decuscope_Vol08_1969

    17/64

    DOPUN#

    DOHSRD ..

    ENDCK ..A .

    PUNTST ..

    ISZ PUNCHJMP OKPUNCHPSF'JMP.-lIAACPLSCLA CMADCA PUNCHJMP GOBACK

    TAD .+ 2DCA ENDCKRF'CRSrSKPJMP .+5ISZ ENDCKJMP . -4CLA CMAJMP I ARR8JMP I AoACTOAoPSF'JMP.+3PCF'DCA PUNCHRRBCLA

    IPUNCH CHARACTER F'ROM LINC ACC.IWAS PUNCH IN USE ?INOIWAIT F'OR PUNCHITO F'INISH WITHILAST CHARACTERIGET CHARACTERIPUNCH IT . CLEAR rLAGISET PUNCH INDICATOR

    IrROM PAGE 6-14 Or PDP-8 COURSE WORKBOOKISET UP ENDCHECKISTART GETTING CHARACTERIALSO EQUAL -1764 F'OR ABOVE115 FLAG = 1 ?INOIYES.. GET CHARACTERIINDEX ENDCHECK .. IS IT ZERO?INO .. CHECK FLAGISET ACCIRETURN WITH 7777 IN LINC A REGIACC IS CLEAR DUE TO DCA ENDCKIREAD CHARACTER AND CLEAR rLAGIPUT IT IN LINC A AND RESTART

    ISENSE F'LAGINONE. IT MAY 8E WORKING .. SOILEAVE IT ALONE.ICLEAR F'LAGICLEAR PUNCH INDICATORICLEAR READER F'LAG

    PUNCH .. JMP I PUNTSTo IALL INTERRUPTS DONE

    *230JMS PUNTST*OPRATEJMP OPRDO

    ISYM80L TABLE OUTPUT OF' PASS 2

    LG OKPUNC+0004A 0164ACTOA 1457DOHSRD 0147DOPUN 0136E!\IOCK 0163GOBACK 1460IAAC 6171IACA 6167OKPUNC 0142OPRATE 1432OPRDO 0120OPSORT 0123PUNCH 0175PUNTST 0165PWAIT 0140

    ITEST HIGH SPEED PUNCH/READER

    IGO TO USER SUBROUTINEIWITH N-13 IN A C C U ~ U L A T O R

    16

  • 7/29/2019 Decuscope_Vol08_1969

    18/64

    MODIFICATION TO RANDOM NUMBER GENERATORDECUS No. 5/8-25

    Lawrence L. Feth and Richard V. WolfEye & Ear Hospital and University of Pittsburgh

    Pittsburgh, Pennsylvan ia 15213

    "The lack of user-defined functions or subroutines in the DECFORTRAN system imposes a severe limitation on FORTRANprograms for the LlNC-8 (or PDP-8). Short, machine-languageprograms stored in the data area wi II work for simple problems;however, many desirable functions and subroutines are so longthat this method fails. After studying the most recent listingof the FORTRAN Operating System (DEC-08-CFA3;"LA, March1967) we have decided that many useful functions can beadded to the op-system by replacing a function that wi II no tbe used by the FORTRAN program in core. The trig functions,especially ATNF(X), are the most I kely candidates for replacement.

    "These functions are probably used less often than SQTF(X),EXPF(X), or LOGF(X), and no other routines depend uponthem. The techniques for writing new functions are well i1-lustrated in the Marc h 1967 version of the listing whi ch isheavi Iy commented and easy to follow."As an example of a user-defined function we have modifiedP. T. Brady's RANDOM NUMBER GENERATOR (DECUS 5/8-25) so that it replaced ATNF(X). A listing of th e modified

    subroutine is enclosed. Two changes were made in the subroutine. First, we have written a routine that uses X to init i a ize the random number generator, if X is different fromzero. This X is no t th e first number generated by the routineA programmer con initial iz e a random sequence by usingRANF(X) with X 10, then continue the sequence from its init i a value by using RANF(O.). The sequence wi II be reproduced every time a particular value of X is used to initializeit .

    "For our purposes a positive random floating point fraction ismore desirable than a random integer. This led to ou r secondmodification. The original subroutine leaves its result in threesuccessive locations FRN 1, FRN2, an d FRN3. We have in serted location IRN, whichcontains zero, aboveFRN1 so thathe floating point number returned to the stack by th e interpreter is always a fraction. The sequence of operations fromlocations 4742 to 4745makes sure thatFRN1 isalwayspositiveliThe function name can be changed from ATNF( ) to RANF( ) by changing location 1605 in the Function Symbol Tablefrom 0124 to 2201 before compiling the program. The namedoesn't have to be changed if the programmer can always besure that the correct routine wi II be in core when his FORTRANprogram uses ATNF( ) to call the random number generator"User defined functions may be loaded using the binary loadeafter the operating system has loaded the FORTRAN objecprogram an d halted. The program is started by restarting th eoperating system at location 201. In ou r system, using th eLlNCtape FORTRAN system we load th e user defined functionfrom mag. tape under program control.

    ///

    RANDOM NUMBER FUNCTION FORFORTRAN OPERATING SYSTEMOCCUPIES ATNF[Xl LOCATIONS

    USE WITH PDP-8 AND LINC-8IN OPe SYSTEM

    *4656 45014657 00514660 46634661 00074662 55004663 00514664 51544665 00234666 46714667 46754670 46714671 50024672 0025540247550007 /

    //1357700403503353135603471353700470067006

    4656ENTERSUBNSORTILVERETURNSORTI SUBNSSSBfIFNE\':

    NELv I

    OLDNEt!FlDSX . 0025FSTSFRNt

    OLD.. IlVE

    / GO TO INTERPRETER = JMS/ ENTER SUBROUTINE SORT/ FROM INTEkPRETER/ EXIT FROM INTERPRETER/ EXIT FUNCTION/ SUBROUTINE TO PUT ARG./ INTO X A N ~ 3 A C K ON STACK/ FLOATING I f TEST:/ GO TO N E ~ IF X NEG./ GO TO OLD IF A ZERO/ GO TO NEW IF X POSe/ PUT X ON STACK/

    I Z OLV I

    / STORE NO. ON STACK[XJ/ LOC FRNI - I ~ I T A L I Z E ~ A ~ F / lEAVE INTERPRETERBEGIN RANDOM NUMBER S U 2 ~ O U l I N E [ P. T. BRADY - D i C ~ S #5-23

    t'!ITh ;V;oDIFICATIOi-.JS TO OUTPUT POSe r i ~ A C T I O N Ai--.D P2-0VISIO;\SFOR INITIALIZATION USING NEW X

    TAD FR1\3f

  • 7/29/2019 Decuscope_Vol08_1969

    19/64

    4110 1356 TAD FRN2 4144 10404111 3352 DCA TEt'l:P2 4145 33554112 1430 SZL 4146 53604113 2351 IS Z TEMPi 4147 01774714 7000 NOP 4750 74004715 1355 TAD FRNI 4751 00004716 1104 eL L HAL 4752 00004711 7430 SZL '-1753 00004120 2352 IS Z TEI'I'P2 4754 00004121 7410 SKP 4755 00004122 2351 ISZ TEMPI 4756 0000LI123 1000 Nap 4157 00004124 1100 CL.L 4160 45014725 1355 TAD FRNI 4761 50024726 3355 DCA F"RNI 4762 41544121 1356 TAD FRN2 4163 00524130 1004 RAL4131 1430 SZ L4732 2351 ISZ TEi"'lP 14733 1000 NOP4134 1100 CLL4135 1352 TAD TEf'liP24136 3356 DCA ,RN24131 1355 TAD F'RNI4140 1004 RAL4741 1355 TAD ,RNI4742 1351 TAD TEMPI4143 7510 SPA

    GUIDE CALL AND A NOTE ABOUT THE LlNC-BEVENT COUNTER

    Glen W. JohnsonInstitute of Oceanography

    Dalhousie UniversityHalifax, Nova Scotia, Canada

    GUIDE CALL can be made compatible with the LlNC and canbe arranged so that LAP6 can never lose the manuscript in itsentirety.

    Store the following program in a CLEARed memory, then DO:07043400.P1400

    1401140214031404

    CONT00550701005672006015

    SET i 15RCGSET i 167/200jmp 15

    If the user makes a habit of leaving LAP6 via EX, LO, or Fcommands, there will rarely be an y problems. If LAP6 is leftin some other way, a II lines now in memory, bu t not ye t ontape, wi II be lost when LAP6 is reentered. Un less the tape isdamaged, these are the only lines that will be lost.LAP6 was designed to wipe out the manuscript if it is startedat 20 twice without an i n t e r v e n i n ~ "exit I command. It wasalso designed to retain the manuscript if it is started at 17 anynumber of times. Hence, it is wise to start at 17 when underprogram control.In my LlNC-8 EVENT COUNTER which appeared on pages 15and 16 of DECUSCOPE Vol. 7, No.3 , I refer to OPR 0 an dOPR 1 commands. These cOr'1mands for using a high speedreader/punch ore described in a DECUS Program with a LAP6

    18

    CMADCA F K ~ l JMP EXITCO 177,0'117C 7 LIOO , 7400TEMPI,OTEMP2,0TEMP3,OIRN, aFRNl"OFRN2,0F I ~ N 3 ,0EXIT,4501 I ~ E C A L L I N T E R P R E T E j - ~ FLOS I PUT RANDOM FRACTIONIRN I ON STACKSU8L I LEAVE SUBROUTINEENTER=4501

    5UBN=0051ILVE=000155S8=5154f'IF"=0023F"LDS=5002F"STS=5402SUBL=OO52RETURN=5500

    modification (LAP6-1 H).The essential patches to PROGOFOP for OPR i 2 from t hisprogram are as follows:Change the following locations in BN 2

    lac cant12 0 1177 OPRDO, TAD (JMP 1.+3+13)121 3122 DCA .+112 2 0000 0123 1460 GOBACK* /OPR 0124 1460 GOBACK* /OPR 1125 2020 INCRMT126 1460 GOBACK*12 7 1460 GOBACK*130 1460 GOBACK*131 1460 GOBACK*132 1460 GOBACK*133 1460 GOBACK*134 1460 GOBACK*135 1460 GOBACK*

    177 5536

    *These are available for other OPR commands: just insert thestarting address (PDP-8) of the routine.Change the following location in BN 5

    lac cont1432 5120 JMP OPRDO

  • 7/29/2019 Decuscope_Vol08_1969

    20/64

    GENERAL PURPOSE 110 PANEL FOR A PDP-9

    INTRODUCTION

    Haruhisa IshidaDenkitsushin University

    and University of TokyoTokyo, Ja pan

    One of the features of PDP computers is the ease of interfacingany user-designed I/Odevices. A standard way of interfacingrequires one or two I /o cables, a mounting panel, a deviceselector and some other circuit modules. Whi Ie a large numberof I/Odevices can be interfaced with the use of an I /o interface logic arrangement such as one offered by DEC, it happensquite often that those I /o devices need not be connected to amother computer on a permanent basis. This is especially truein a university environment, where researchers or students de sign and connect experimental devices, use them on-line onlyoccasionally or just for some time and then quit.It would be desirableto have some sort of general purpose I /opanels so that an arbitrary I /o device can interchangeably behooked up easityand economically on the spot each time whenthe need arises. For this purpose, a general purpose I /o panelwas designed and attached to a PDP-9 at the University ofTokyo.A common device code of 37 is assigned to th e panel. The terminal arrangement is shown in Figure 1. Avai lable are 35 output signals and 21 input signals associated with IOT37xx in structions. The use of multi-terminal connectors was deliberately avoided, so that one can hook up any loose wires instantlywithout using expensive multi-terminal connectors. This ispermitted within an anticipated frequency range. Care hasbeen taken to insure that there is no direct connection from thepanel to the PDP-9 I /o bus. The data channel facility canalso be used with this panel and a W104 Bus Multiplexor,although it has not been implemented.

    Whenever an IOT37x4 instruction is executed, the 18-bit content of th e accumulator appears atFROM-ACterminalsO to 17as buffered signals (a positive leve I for a 111") from W500 highimpedance followers. Combin ing IOT37x4 pu Ise with subdevice signals, one can implement up to four "write I instructions, although only one write instruction will suffice in mostapplications. Terminals for a DCH I /o OVFLO signal and aDCH CLEAR FLAG signal are also provided for future use. Apositive CAF (clear all flags) pulse from an R107 is includedalso.INPUT SIGNALSInternal connection to input signals is shown in Figure 2.

    SKIPI0rr.l7X1 (.from H103)~ S k i P Request

    IN'rERRUPT PI RequestIOT3702 ( . f ~ o m W103)

    TO-AC 0IIIiTO-AC 17

    DCH RQ

    Read Requestto ACO

    II I I~ . t o I A C 1 7

    ~ D C H Figure 2 Input Signal Connection

    IOT37x1o 0P NFROM AC

    0000000000000000900 1 2 3 4 5 6 7 e 9 1 0 1 1 1 2 1 3 1 4 . 1 5 1 0 1 7IOT37x2o 0P N TO AC000000000000000000o 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17IOT37x4G) 0P N

    SD(P)000000 01 10 11

    SD(N)0000 0 000 01 10 11 SKIP INT

    Figure 1 Terminal Arrangement

    OUTPUT SIGNALSlOT pulses (I0T37xl, IOT37x2 and IOT37x4) are likely to beused most often and they are available through six BNC connectors both as positive and negative pu Ises from a W103 device selector. Decoded subdevice signals in four combinations(SDOO, SD01, SD10and SDll)arealso available, al l as positive levels from a B155 binary decoder and as negative levelsfrom R107 inverters.

    oCAF DCH000OV CL RQ oGND

    19

    An IOT37x 1 instruc tion becomes a skip instruction when a device flag (a negative level) is connected to the SKIPterminalWhen there are two, three or four device flags, one shouldconnect to it an OR output of up to four AND outputs of eachof the flags and each of SDOO, SD01, SD10 and SD11. ThenIOT3701, IOT3721, IOT3741 and IOT3761 become skip in structions. Similarly, flagscanbeconnectedtothe INTERRUPTterm inal to cause interrupts.The IOT3702 instruction has been wired as a read instruction.Hence one can simpl y feed up to 18 negative levels to 18 TOAC terminals 0 to 17to input data into the accumulator. Thisone read instruction wi II suffice in most appl ications. A DCHRQ signal terminal is also provided.

  • 7/29/2019 Decuscope_Vol08_1969

    21/64

    A pop-a/PAPER TAPE READER INTERFACE TOSIMULATE TELETYPE OPERATION

    Daniel ParrishD. Eugene Hokanson

    Veterans Administration Hospitaland

    Department of MedicineUniversity of Washington

    Seattle, Washington

    To increase speed and reliability of paper tape input, it wasdecided to interface a Ta IIy Model R-30 to our system (PDP-8,DECtape and min idisc). The R-30 is a low cost, 30/sec. readerdesigned for asynchronous operation. The obvious se lection ofa device code would be 11 , to take advantage of the choicebetween high and low speed tape subroutines which exist inmost DEC-suppl ied software. This was not attractive in ourcase, however, because most of our app I ca t ions programs havebeen written in a conversational mode. 1 Program calls, datalocations and control constants ar e entered either by the operator via the keyboard or by paper tape. The latter method isused frequently for unattended batch processing. To be ableto continue operating in both modes, the new reader was giventhe same dev ice code as the TT Y reader/keyboard.Figure 1 illustrates how this was accompl ished. A doub Ie-pole,double-throw switch (SW1) is connected to an R200 as shown.The R200 output (0) is connected to pin V of the Tally deviceselector. Output (1) is coupled by an external diode to pin Kof module ME 17. Th is module is part of the AND gate of theTTY keyboard/reader device selector in the processor. Withthe switch in the TALLY position, -3V is present on the Tally

    WI03TALLYDEVICESELECTOR

    TTY

    Rill TTYDEVICESELECTORROO2me 17

    IOP-2A

    gate and ground on the keyboard gate, thus disablingthe keyboard. The reverse situation exists with the switch in TTYposition.The rest of the interface is straightforward. 1 OP-2 is stretchedand power ampl ified by a W040 to activate the drive mechanismand move tape. 10P-2also clears the flagand after 35ms, setsit . This establishes th e reader speed at approximately 30characters/sec. The flag is also cleared by an end-of-tapeswitch which prevents further reading. The flag isANDedwith10P-1 to the computer skip bus. 10P-4 is ANDed with itselfto strobe characters into the AC input mixer through the holesensing switches of the reader. This was done to hold th e ACinput at -3V during switch transition.With this arrangement, operation of the Tally reader exactlydupl icates that of the TTY reader.

    KSF 6031 Skip on flagKCC 6032 Clear AC and reader flagKRS 6034 Read staticKRB 6036 Clear AC, read buffer (switches)

    Clear reader flagThe only difference is in setting the reader flag. This is accomplished by a delayed 10P-2 rather than an end of transmission pulse from the TTY buffer.The system has proved to beverystable in performance and hasprovided many hours of error-free operation.1DECUSCOPE, 7, No.3 , 1968.

    CLEAR AC-3v

    TALLYDRIVECOIL

    -26.5v

    ,.,OP-4 - - Y - ~ _ _ _ _ _~ - - - I ..A.. .

    r"""-11 EOTW 2Figure 1

    PDP-8/Ta Ily Model R-30 interface. SW 3-10 are the holesensing switches of the Tally Reader. SW-2 is an End of Tapesensing switch.

    20

  • 7/29/2019 Decuscope_Vol08_1969

    22/64

  • 7/29/2019 Decuscope_Vol08_1969

    23/64

    CONTENTS PAGEDECUS Notes .Nuclear and Reactor Physics ExperimentsWith an On-Line Computer .. 2-7A Fast Approximation Method ForFinding Logarithms . 8-12

    PDP-5 and PDP-8 Hardware DifferencesAffecting Software Interchange . . . . . 13Interface Between SR400 Card Reader and PDP-8 . 13Point By Point Plot With LI NC-8 14PDP-9 Programming Note. 15PD P-1 0 Programm ing Note 15PDP-8 Programming Notes

    HLT Everywhere Ex cept the Loaders. 16Changes to DECUS 8-64 and 8-87 16FOCA L Notes FOCAL Points.

    Software for Sa Ie or LeaseWanted NoteLetters ..News from DEC .

    DECUSCOPE HAS BEEN PUBLISHED SINCE APRIL1962 AND IS THE OFFICIAL NEWSLETTER FORDIGITAL EQUIPMENT COMPUTER USERS SOCIETY.IT IS PUBLISHED PERIODICALLY AT THE DECUSOFFICE, DIGITAL EQUIPMENT CORPORATION,MAYNARD, MASSACHUSETTS.TELEPHONE: AC617, 897-5111, EXT, 2414EDITOR: MRS. ANGELA J. COSSETTE, DEC USCIRCULATION: 4,600 COPIES PER ISSUE

    .16/17

    . 17/1818181920

    DECUSNOTESWatch for the Following DECUS Publications

    The following DECUS publications will be available shortly.The automatic distribution of each is indicated. Those not included in automatic distribution may request material directlyfrom the DECUS Office.1. PROGRAM LIBRARY CATALOG ADDENDUM

    Distribution: All DECUS Members2. PROCEEDINGS OF FALL 1968 SYMPOSIUM

    Distribution: Speakers and Meeting AttendeesCharge: S5. 00 per issue - Individual Members and Non

    Members3. PROCEEDINGS OF EUROPEAN 1968 SYMPOSIUM

    Distribution: Speakers and Meeting AttendeesCharge: See No. 2

    4. PROCEEDINGS OF CANADIAN 1969 SYMPOSIUMDistribution: Speakers and Meeting AttendeesCharge: See No.2

  • 7/29/2019 Decuscope_Vol08_1969

    24/64

    NUCLEAR AND REACTOR PHYSICS EXPERIMENTSWITH AN ON-LINE COMPUTER*

    B. J. Allen and J. R. BirdPhysics Division, Australian Atomic Energy Commission

    IntroductionMuch of our knowledge of the properties and interactions ofatom i c nu c lei has come from the measurement of th e energy ofnuclear radiations. By absorbing alphas, betas, gammas, neutrons, etcetera, in various types of detectors the energy ofthe incident radiation is converted to a voltage pu Ise. Theheight of the pulse if proportional to the energy deposited inth e detector and is measured by determining in which of anumber of height interva Is or "channels" the pulse falls. Suchmeasurements occur in reactor physics studies and other fieldsof application.The instrument which performs this operation is calledaMultichannel Pulse Height Analyser. By converting the incomingpulse height to a digital code, the analyser obtains a spectrumwhich relates the energy of the radiation with its frequencyof occurrence. The spectrum is normally displayed on an osci Iloscope-counts versus pu Ise height-and a record is printed.Data handl ing was not a significant problem in the early pu Iseheight analysers. With 1000r so channels of information, thetime taken to examine and interpret data was very much lessthan the time required to collect it . However, this is oftennot th e case today.The most sophisticated analysers now offer up to 4,000 datachannel s, with complete input/output facilities for fast datatransfer via paper tape, cards or magnetic tape. Dual pulseheight to digital converters enable two-parameter analysis,and different data display modes are available on an oscilloscope. A limited degree of data reduction is provided toallow subtraction and in tegration of data. These operationsare, of course, wired in and selected by switchandare, therefore, not readily modified or extended.Simu Itaneously with the advent of the larger analyser systemshas been th e development and appl ication of small digitalcomputers to th e general data taking problem. By coupl ingpulse height co nverter and oscilloscope to a central processorand memory bank, a computer canbe used as an analyser withversatil ity an d potency beyond that of the most sophisticated"fixed wire" multichannel analyser.A control program permits peripheral units attached to thecomputer to be used for a particular application (which needno t be pulse height analysis). A change of application re quires a change of program only, not internal rewiring. Inaddition, the computer can readi Iy control external devices.The diversity of neutron and reactor experiments conducted bythe A.A. E. C. Research Establ ishment has le d to varied electronic and data taking requirements. Emphasis therefore has

    *Reprinted with permission of the Director, A. A. E. C. Ressearch Establishment, Lucas Heights, N.S.W. Australia.

    2

    been placed on obtaining a data handling system with maximum versati I ty . Such a system is the PDP-7 Programmed DataProcessor now operating in the Physics Division (Figure 1).Although this article refers specifically to the installation inthe Physics Division at Lucas Heights, the comments are ap plicable to "on-line" computer systems in general.

    The Centra I Processor

    The heart of a computer is the centra I processor wh ich performslogical and arithmetic functions and controls the transfer ofdata between peripheral un its and memory. The present PDP-7configuration has 8, 192 (8K) storage locations in its memorybank, each location containing a "word" or eighteen binarydigits (bits). Storage of any number from zero to 262,143 isthen possible.The processor (Figure 2) takes one machine cycle (1 .7 5 xl 0-6sec) to address a location, write its contents into the accumulator, and rewrite the data back into th e original location.Method of Operation

    In each time cycle, the processor operates through severalcontrol states set by the major state generator. In the FETCHstate, the contents of the location specified by the programcounter are placed in the memory buffer register. This wordconsists of a four bi t instruction part which is deposited in theinstruction register, and a 13 bi t address, deposited in thememory address register. The contents of the program counterare then incremented by one in preparation for the next cycle.The EXECUTE state follows with th e loading of the contents ofthe location specified by th e address register into the memorybuffer where it is operated on accordingtothe instruction register command. Thus a series of instructions can be followedby storing them in sequential memory locations and setting theprogram counter to the address of the first instruction. Thisinstruction I st then constitutes a program. Programs may bewritten in SYMBOLIC and FORTRAN II languages, and programming aids are avai lable for editing, assembl ing and debugging operations.Coupl ing the Computer to ExperimentsAn essential feature of the PDP-7 which makes it appl icableto experimental work is its on-I ine operation through threeinterrupt modes. Program, priority and data break interruptsare available and operate when the processor senses a signalfrom a peripheral unit. The occurrence of such a signal in dicates that the unit is ready for data exchange with the processor.Under program interrupt control th e ready signal causes a jumpfrom the current operating program to an interrupt routine designed to test and cater for the signalling unit.Because an interrupt may take some 30-1 00l-'sec to clear away,it is often important to ensure that certain peripheral un its areno t missed. This maybe achieved byuse ofa priority interruptwhich allows 1evels of importance to be assigned to the different peripheral devices. All signals are then rememberedand dealt with on a priority basis-even to the extent of interrupts within interrupts.

  • 7/29/2019 Decuscope_Vol08_1969

    25/64

    Figure 1. PDP-lon-line computer.

    Data break is a much faster operation. The processor is heldfor one cycle whi Ie data is transferred directly to a specifiedaddress. This interrupt mode provides a data transfer rate ofup to 570, 000 words/sec.Typical peripheral units are the pulse height converter, os cilloscope, typewriter and paper tape unit. In each case,data transfer occurs through the most suitable of th e interruptsdiscussed above.The Physics Division system under current development is il lustrated in Figure 3.

    DATABREAK

    INPUTOUTPUTUNITS

    PROGRAMINTERRUPT

    A D D R E S S _ ~ DATA-- -+

    PROGRAMCOUNTER13 BITS

    INTERFACELINK 1 BIT

    ACCUMULATOR18 BIT ARITHMETIC

    REGISTER

    ADDRESS

    Figure 2. The memory address register enables a core location to excha:zge informationwith the accumulator through the memo"'y buffer in 1.75 x 10 - 6 seconds.

    3

    INFORMATION ~ o c t S S O R ___ ~ F O R M A T I O ~ ~ E C T O R I ' - - - T - - ' ~ ~ ~ ~ ~ ~ O ~ rf-K-~ ~ ~ ~ ~ ~ - .

    AAE.C.+-------.-; MAGNETIC +- - . - - - - - -....~ _ T _ ~ ~ S T E ~ ~

    -- - 10 +- SELECTOR~ o o CHARiSEC.

    ---.-- PAPER TAPEREADER

    -------i S C A ~ E i . . . J ; : : : : : - : - ~ LlGHTPEN

    , ANALYSER'!.. . _. - CONTROL ;

    RELAY ,~ J " ' - -OSCILLOSCO-PE:::: DIGITAL TO .-- .. -.-- PULSE HEIGHT'

    CONVERTER '

    OFFLINE PAPERTAPE PLOTTER

    - - - - ~ Il' - - - -______ . _ _____ ---....1

    Figure 3. Binary coded data are reeeil'cdthrough the information collector from thcvarious peripheral units, each identified bya code. Information is transferred throughthe distributor to a particular unit by callingits code.

  • 7/29/2019 Decuscope_Vol08_1969

    26/64

    Commun ica t ionOf primary importance is th e ability of the experimentalist todetermine th e status of his experiment. He must know if hisequipment is functioning as intended and if his system is op timised to handle and interpret the incoming data. Relevantregions of interest need to be selected for attention, and resolution and statistics examined. With this information at hisfingertips he is in a position to make the best use of facilitiesin "real time" (the somewhat expensive time during whichaccelerator, electronics, technicians an d data systems areemployed) .The most effective method of communication between the ex -periment and physicist is vi a th e visual display of memory contents on the oscilloscope. A light pen provides a suitablemeans of response for the experimentalist. Consisting of ashaped I ght pipe and fast photomultipl ie r th e pen registers anosci Iloscope display point and causes the computer to rememberthe displayed location. The program in operation can thenassign this coordinate a higher brightness leve I for display andundertake an y of a multitude of operations as required.With this technique, simple programming is adequate with muchof the decision-making left to the physicist. Nevertheless,the FORTRAN capabi I ties of the PDP-7 permit relatively complex p r o g ~ a m m i n g . Theoretical calculations of angular distributions have been made and results displayed on the oscilloscope for direct comparison with reduced experimental data.EX PER 1M ENTSThe versati I ty of the on-I ine computer is perhaps best illustrated by a survey of some of the current and proposed experiments in th e Physi cs Division. These fall into four catagoriessi ngle parameter, mu Itiparameter, mu Itisca I ng an d correlationexperiments.Single Parameter Pulse Height AnalysisA single parameter experiment involves the measurement ofthe frequency of observation of on e quantity only, e .g . , theenergy deposited by nuclear radiation in a detector.A control program, written in symbolic language, allows thePDP-7 to be used in a manner similar to a sophisticated multichannel analyser. The program utilises the program interruptcontrol to allow d a t a transfer between th e processor an dperipherals.An incoming voltage pulse is digitised by the pulse height converter into 1,024 channels ( i .e . , a 10 bi t binary number).Simultaneously with the loading of the binary number into theconverter buffer, a ready signal interrupts the operating program. A subroutine determ ines the source and nature of theinterrupt and initiates the parallel transfer of information fromthe buffer into the accumulator. The contents of th e locationcorresponding to the digitised pulse height is then incrementedby one.The present program accumu lates data in reg ions of 1,024channels each. Any region can be displayed on the osci 1-loscope and areas of interest expanded for clarity. Arithmeticman ipulations of data may be performed as requ ired.

    4

    An important application of this single parameter program is ingamma-ray spectroscopy employing hi g h resolution lithiumdrifted german ium detectors. For a resolution of 15 keV an dwith a minimum of three channels to define a peak, the 1,024channels provide an energy range of 5 MeV.Figure 4 illustrates a typical 1,024 channel spectrum takenwith the germanium detector. The number of gamma-ray versusenergy is shown for the A1 (p,y) reaction. The highest energypeak corresponds to an 11 .1 3 MeV gamma-ray. The usefu Iinformation in such a spectrum is contained in the areas ofpeaks above the continuousbackground. A program is availablefor listingthepositions an d areas ofall peaks whichare locatedby a simple search routine. An alternative method involvesthe use of a pen to se Iect the reg ion of interest and a FORTRA NII program to compute a least squares background fit under thepeak. A subtraction then yields the peak area.It is frequently useful to take data simultaneously in a numberof detector systems. Backgrounds then can be run during anexperiment, subtracting from (instead of adding to) the accumulated spectrum. Coincidence and angular distribution systems can have detector outputs recorded in separate sectionsof memory by tagging, in coincidence, incoming informationwith a base address from th e selector buffer.Multiparameter AnalysisA multiparameter pu Ise he ight analysis program allows experiments with a number of variable parameters to be performed.For example, a dual parameter experiment is the investigationof the (n,y) reaction where it is of interest to measure bothneutron and gamma energies and the number of simultaneousoccurrences of these variables N{E , EyL Other applicationsare the measurement of delayed g a ~ m a emission after fission(Ey' t) an d gamma-ray coincidence experiments.Running the dual pulse height converters in coincidence in thetwo parameter mode, two conversion channels are providedwhich digitise the incom ing pu Ise he ights to form simu Itaneouslytwo 10 bi t words. These words are combined in predeterm inedportions to load the buffer with one 12 bi t word (Figure 5) . Theprogram, on interrupt, increments by one the correspondingaddress in memory. This location represents the simultaneousvalues of x an d y an d isthen a co-ordinate inthe (x,y)matrix.As the program occupies approximately 1,500 memory locations, the full 4,096 channel data matrix is available onlywith an 8K store.Several modes of display of incoming an d accumulated dataar e programmed for the oscilloscope. Figure 6 illustrates theusefulness of these different modes in depicting the (n,y) re action. The x axis corresponds to gamma spectra from different neutron time of flight groups (yaxis). The isometricdisplay (A) simulates a three dimensional representation ofEn, Ey, and N{E n, Ey). By setting upper and lower I m itson the number of events per channel, a contour is obtained ofthose co-ord inates for wh ich N lies in the spe c ified range (D) .Markers ar e positioned and sl ices along these perm it the ob servation of single parameter spectra (B and C). Because al ldisplay modes operate under program interrupt control, it ispossible to examine spectra while still accumulating data.Real time analysis of the (n ,y) data may proceed as follows.

  • 7/29/2019 Decuscope_Vol08_1969

    27/64

    10.000

    5.000 1.000

    10.000

    s.ooo 1.000

    CHANNEL NUMBERS

    Figure 4. Germanium spectra of gamma-rays from proton capture in aluminium.

    READYJ PULSE HEIGHT I I 10 BITS r ) I ..I CONVERTER 7 12 BITS\. 7J PULSE HEIGHT I J 10 BITS r )1 CONVERTER J , PROC

    Figure 5. Dual parameter analysis.

    The gamma spectra corresponding to events between peaks inthe time of flight spectrum are the backgrounds as observed bythe gamma spectrometer. Subtraction of these data (after normalisation of neutron flux) from that obtained with lion resonance I events leaves th e actual resonance capture gammaspectra. The different neutron resonances may have variedproperties which result in dissimilar gamma cascades. Consequently, it is important to distinguish between these events.The ability to manipulate data on-line in this way allows amore accurate representation of the physics involved.

    A 16 x 256 data matrix may be used, i. e . , 16 gamma spectraof 256 channels each. However, the choice depends on there i a t i ve complexities of n e u t ro n resonances and gammacascades.The obvious advantage of the multiparameter system in thiscase is the ability to take a number of spectra-includingbackgrounds-simultaneously. With the relatively low countrate in an (n, y) experiment this is no meagre saving of realtime usage. In addition, electronic drifts are minimised andas in general they would be common to all spectra, correctionscan be made readi Iy.

    5

    Data Reduction Before StorageThe parameters involved in some experiments may not be in dependent functions. When this occurs, it is possible to gainaccurate results without mammoth storage requirements.The identifi cation of charged particles by measurement of their

    dErate of energy loss (-) and total energy (E) is a suitable ex -

    dx dEample. To a first approximation of E . - is a constant anddxproportional to the mass of the particle.Now to measure both quantities to better than one percent, a128x 128 data matrix is required which far exceeds the available core storage (apart from the storage which may be requ iredfor a third parameter).It is necessary, then, to operate on coincident incoming EanddE- values to identify the responsible particle. Then only adxsingle parameter resu It for each particle need be stored. High

  • 7/29/2019 Decuscope_Vol08_1969

    28/64

    speed calcu lations of this type (i . e ., identification of twovariables) can often be achieved within th e pulse height converter dead time and therefore need not affect the exper imentdead time significantly.

    MultiscalingInstead of recording the relative heights of incoming voltagepulses, multiscaling records the number of pulses arriving intime interval At at time ti . A memory addres s represents ti andits content is the number of events counted in th e time interval.The pulsed neutron experiments with the Van de Graaff utilisethe multiscaling technique. The rate of decay of the neutronflux, incident on a BeO cube, is observed by scaling the output of a neutron detector during sequential time intervals afterthe pulse. Statistics accumulate by pulse repetition and re cycling of time channels.The PDP-7 configuration shown in Figure 7 requires the use ofa fast scaler gated by a crystal controlled timer. On completion of the time interval 6t, th e timer stops the scaler andinitiates a data break transfer of scaler buffer contents to th eaddress specified by th e timer buffer. This operation takes1 .75I-1sec.Because the data break overwrites the location contents, it isnecessary, on completion of a time cycle, to add th is timespectrum to a permanent spectrum he Id in another area ofmemory. This addition is achieved by program and requiresapproximately (15 x N) I-Isec where N is the number of timechannels. At a pulse rate of lkc/sec, 60 time channels couldbe catered for per cycle.

    CorrelationsNeutron flux in a reactor may be studied as a function of spaceand/or time by correlation techniques. Neutron sensitiveionisation chambers situated in the reactor provide a D.C.voltage which depends on the incident neutron flux. Autocorrelation requires one detector, whose output at time t iscompared with the output at al l subsequent time intervals.Cross corre la t ions compare the time dependent output of twodetectors spatially separated in the core.Figure 8 illustrates the operation of a cross correlation system.A gate generator triggers the dual pu Ise he ight converters whichsample the D.C. levels of the two channels simultaneously toprovide two six bi t words in the 12 bi t converter buffer. Increased accuracy can be obtained by ~ I t e r n a t e converter sampling employing the detector selector buffer to distinguishbetween the detector outputs. This would permit a maximumof ten bi t accuracy in cross correlation work, equal to thatnormally achieved for autocorrelations.The contents of the buffer are then loaded into sequentialmemory locations by a modification of the data break interrupt.An alternative technique istodeposit data directly onto magnetic tape. At a writing speed of approximately 170 kc/sec,the dead time is of the same order and in series with the pu Iseheight conversion time. Sampl ing rates of up to 10 kc/sec andrelatively unlimited data storage are possible.

    6

    On completion of the experiments, th e tape is run back throughthe computer for analysis.

    Experiment ControlComputers are frequently used for process control in circumstances where control requirements are well established. Inresearch this is seldom the case, although certain features ofan experiment may be suitable for automation.For example, operations such as th e sequencing of sets ofmeasurements, including statistical tests of data, changingdetector positions (particularly in high radiation and contamination areas} are suitable for computer control if an extensiveseries of measurements is to be made.

    SummaryA data processing system such as that described offers superiorflexibil ity in terms of cost and equipment when compared withthe sophisticated pu Ise height analyser. The appl ication ofthe on-line computer provides an opportunity to develop newand more effective methods in the conduct of research, a factwhich is being exploited widely in many fields.

  • 7/29/2019 Decuscope_Vol08_1969

    29/64

    (A) Three-dimensional display of number ofevents N(E y, t) (y axis) as a functionof time (t) (offset y axis) and energy(Ey) (x axis).

    ". ,

    ......... ..", ..., , ~ ~ ~ ~ ~ : : : : : : : : : : : : : : : . .....................-.. ".. ;.... ............. . ."".... :::::::::::::::::::::::su ............._..; . ... ................ ..: ......- .......- . : . ~ . : : ..... .,. ............-.....................-......................: ..... ............ ........: . . . . . . . ,., , , : : : : : : : : ; : : : , . : . , , . , .......

    (C) Gamma spectra for selected time intervals illustrate the change in spectralshape between the two time peaks.

    (B) Time spectrum-gamma-rays due to theLi(p,y) reaction arrive first (R.H. peak)followed by Cd(n,y) events in a cadmiumtarget (L.H. peak).

    (D) Contour display of co-ordinates (Ey, t)with contents ll!ithin a series of countintervals.Figure 6. Dual parameter data matrix showing correlation between arrival time of gammarays and gamma-ray energy:

    NEUTRONPULSES

    TIMER . 18 BITS ' TIMERBUFFER!

    INITIATEDATA BREAK

    I

    PROCESSOR

    L _____________ _

    _____ NEUTRON FLUX- - ~ ' - - _____ _____ TIMER GATE

    _______ _______ DATA BREAK

    NEUTRONCURRENT f------'-----/CHAMBER

    REACTOR

    Figure 7. Multiscaling system.

    PULSE HEIGHTCONVERTER

    GATEGENERATOR

    Figure 8. Cross correlation system.

    7

    IREADY

    IIIIIPROCESSOR

  • 7/29/2019 Decuscope_Vol08_1969

    30/64

    A FAST APPROXIMATION METHODFOR FINDING LOGARITHMS*

    P. D. SiemensLawrence Radiation Laboratory, University of California

    Livermore, California

    In a specific problem of generating a fast log displayon a smallcomputer, the need arose to develop a fast algorithm whoseerror wou Id be less than 10%. To achieve high speed, a linearinterpolation method was chosen.Suppose you wish to find Y1 = 109bX, Assume you have a tab Ievalues of 109bX whose y values are consecutive integers, andtherefore, whose x values ar e consecutive integer powers of b.Consider the diagram shown in Figure 1 .

    Because of the way we arranged the table,L = n+ 1-1 = 1D = b n+1-b n = b n (b-l)F = X-bnY2 = n+Q.

    By ratios of similar triangles,

    (bn,n) FD-I

    The error involved in this approximation isXE = y -y = log X - n - +1 2 b bn(b-l) b-1

    Tofind the maximum error, take the derivative with respect toX and se t it equal to zero,

    1---- = O.bn(b-l)Solving for the X atwhichmaximumerroroccurs, you ge t

    X = bn(b-l)logbe.maxSubstituting this value into the equation for E, th e maximumerror is found to be

    E = 109b(b-l) + 109blogbe + 1max b-1 - 10gbe .Note that for a given b, the maximum error is constant. Inparticu lar, for b = 2, the maximum error is 8.6%. Choosingb = 2 seems to be logical since we are working with a binarymachine; thus the approximation becomes

    n n1092X :! n + X- 2 where 22n

    S 2n X 2n+1 h . X 2n. . I .mc e < ,t eoperatlon - Isequlvaenttosettmgthe most significant '1 ' in X to a '0' . Also, the division by2n is merely n left shifts.

    Assuming the machine has a word length of k and that thenumbers for which one wishes to find the log ar e double precision integers, the double precision integer is then 2k bitslong. You can nowdefinea normalize operation as one which

    (bn+l, n+ 1)T-I

    FIGURE 1

    *This work was performed under the auspices of the U. S. AtomicEnergy Commission.

    8

  • 7/29/2019 Decuscope_Vol08_1969

    31/64

    shifts the double precision word left until the two most significant bits do not agree. For example, to normalize the integer1 requires 2k-2 left shifts.To find the log of a double precision integer X, you first normalize X with Q left shifts. Then n = 2k - 2 - Q (rememberthat 2 n ~ X < 2 n + l ) . What has been done so far is to find the bi tposition of the most significant II I in X, and by normalizing,maximum significance is held.FO i convenience, imagine that the double precision integer Xis represented in a floating point format M, E, where M is aninteger mantissa and E is a power-of-two multiplier of thatmantissa. Before normalization, you have X,O. After normalization, you have Xl' -Q. To perform the subtractionX - 2n you just want to ge t rid of the most significant II I inX. This can be accomplished by two left shifts of the normalized number Xl' In other words, the most significant II I isshifted out the left end of the word and lost. After these lasttwo sh i f t s , you have in f loa t ing point representation,X2, -(0+2).

    Now divide X2 by 2n

    where 2n= 1, n in floating point representation. Then

    X2, -(Q+2)1, n = X2, -{Q+2)-n.But, it was mentioned earlier that n ={2k-2)-Q. Therefore,the f loa t ing point represen ta t ion of the resu It isX2, -{Q+2)-n = X2, -2k. This is equivalent to stating thatnow you have a double p recision fraction whose binary point

    is at the extreme left of the word . To ge t 1092X, a II thatremains is to add the integer n to the fraction X2 .

    In summary, one finds 1092X by normal izing X with Q leftshifts, so that n = (2k-2) - Q. Shift the normalized numbertwo more left to shift the most significant II I out the left end,and to the remaining fraction add n, the characteristic: re membering to align the binary points.An algorithm for the method just describedadaptsverywell toa basic PDP-S (or PDP-sis, PDP-S/I). This routine requires37 storage locations and requires a maximum execution timeof 610 jJsec on the PDP-S and an average execution time of330 jJsec (see Figure 2) .Taking advantage of the EAE option improves these figures considerably. This routine requires lSstorage locations and takesa maximum of 40 jJsec and an average of 34 jJsec to executeon a PDP-S (see Figure 3) . For a PDP-S/I, these times become 32.5 jJsec maximum, and 30 jJsec average.The specific problem for which this log rout ine was developedwas a real-time display of pulse-height analysis data. Aflicker-free display of up to 1024 data points was needed.There was not enough core storage avai lable to store the calculated logs in a disp lay buffer--the logs had to be calculatedas each point was plotted. In addition, decade I nes had tobe plotted to pro vi d e a display of numbers ranging from6o o 10 .Figure4showsa subroutine that provides the required display.By using an interlace technique in plotting the data points,onlya slight flicker is apparent when displaying 1024 points.

    FIGURE 2I LOG ROUTINE FO R A BASIC PDP-8I FIND LOG BASE 2 OF DOUBLE PRECISION INTEGERI ASSUME THIS DP INTEGER IS STORED IN MS AN D LSI THE BINARY POINT OF THE RESULT IS BETWEEN BIT 4 AN D BI T 5

    L2,A,

    TA D MSSZ A CLAJM P L2TAD LSSNA CLAJM P OU TDC A ENUMTAnMSRALSPA CLAJM P DN LTAD LSCLL RALDC A LSTA D MSRALDC A MSISZ ENUMJMPA

    I CHECK FOR ZERO

    I INTEGER IS ZERO-SET LO G TO ZEROI CLEAR STEP COUNTERI NORMALIZEI FINISHED/ YES

    I INCREMENT STEP COUNTER

    9

  • 7/29/2019 Decuscope_Vol08_1969

    32/64

    DNL,

    OUT,

    TAD ENUMCIATA D N2 6DC A ENUMTA D MSRTLAN D N7740TA D ENUlVIRTRRTRRTRDCA LOG

    MS, 0LS , 0ENUM, 0N26, 26N7740, 7740LOG, 0

    / SUBTRACT FROM 22

    I SHIFT MOST SIG. BIT OUT

    FIGURE 3

    / LOG ROUTI)JE FOR PDP-S'S \VITH EA E

    BZ,

    TA D LSMQ LTA D MSNM IRTLMQ LSCASNAJMP BZCIATA D K2 6SHL6DCA LOG

    LS , 0MS, 0?-J26, 26LOG, 0

    10

    ~ O R M A L I Z E SHIFT BIT OU T LEFT EK DSTORE MANTISSA I) ; NIQGET STEP COUNTERCHECK IF ZEROSUBTRACT FRO:Vl 22

    ! SHIFT I ~ T O AC

  • 7/29/2019 Decuscope_Vol08_1969

    33/64

    0200 0000020] ] 60 00202 33200203 22000204 16000205 32150206 22000207 73440210 33240211 33250212 733202]3 742102]4 74070215 74020216 75010217 71040220 3326022] 33230222 70400223 13200224 30100225 12 ] 50226 71100227 70410230 332]0231 14100232 74210233 14100234 741 ]0235 70060236 74210237 74410240 74500241 52500242 70410243 13220244 74130245 00060246 74250247 3100

    FIGURE 4

    I LOG DISPLAY ROUTINE FOR DP INTEGERSI DOUBLE PRECISION FORMAT:I LOC. N -