Digital PDFs
Documents
Guest
Register
Log In
DEC-12-UW3A-D
December 1970
146 pages
Original
13MB
view
download
Document:
dec-12-uw3a-d
Order Number:
DEC-12-UW3A-D
Revision:
Pages:
146
Original Filename:
https://svn.so-much-stuff.com/svn/trunk/pdp8/src/dec/dec-12-uw3/dec-12-uw3a-d.pdf
OCR Text
TISA f DEC-12-UW3A-0 June, 1970 Copyright (c) 1970 by Digital Equipment Corporation The material in this handbook, including but not limited to instruction times and operating speeds, is for information purposes and is subject to change without notice. _ The following are trademarks of Digital Equipment Corporation, Maynard, Massachusetts: DEC FLIP CHIP DIGITAL PDP FOCAL COMPUTER LAB The equipment described herein is covered by patents and patents pending. For additional copies order DEC-12-UW3A~D from Program Library, Digital Equipment Corporation, 146 Main Street Maynard, Mass. 01754 Price $2i00 TABLE OF CONTENTS 3.1 INTRODUCTION MINIMUM REQUIREMENTS OPERATING PROCEDURE Loading TISA 3.2 Operating Modes 2 2 3.4 4.0 Sense Switch 0 Options Knob Options SETUP MODE 4.1 Using Setup Mode 3 4.2 Message 1 4 4.3 Message 2 5 Message 3 7 1.0 2.0 3.0 4.4 5.0 HELP FRAME AND KEYBOARD COMMANDS 1 1 1 1 3 3 8 5*1 DIAL 5.2 Halt All Instruments 8 5.3 Halt Instrument n 9 5.4 8 Polarize Display 9 5.5 Freeze 10 5.6 Go Instrvunent n 10 5. 7 Setup Mode 10 5.8 Write 10 5.9 CATACAL 12 5.10 MAGSPY 12 5.11 12 5.12 Load Polarize 12 5.13 Freeze 12 6.0 TELETYPE USAGE DATA ACQUISITION 12 7.0 8.0 PIN ASSIGNMENTS 14 9.0 DATA BUFFER DISPLAY 16 9.1 Moving Window 16 9.2 Cursor Display 17 9.3 X-Y Coordinates INSTRUMENT INTERFACE GLOSSARY 18 Internal Description Flowcharts A-1 10.0 11^0 Appendix A Appendix B 13 I 20 23 B-l 1. 0 INTRODUCTION TISA, the Time Independent Spectrum Acquisition program, acquires asynchronous data from interfaced instrxnnents , displays that data on the scope and stores it on LINCtape. TISA is compatible with any instrument that transmits X-Y data at rates that do not exceed 2 milliseconds/point and is capable of acquiring data simultaneously from five instruments. The number of data points that TISA can accept depends on the core size of the PDP-12A being used; the maximum number is 512 points for a 4K machine, 4608 for an 8K machine, and 29,184 for a 32K machine. The external asynchronous instrument must be interfaced to the PDP-12 by either two potentiometers or one shaft encoder and one potentiometer, such that one input transmits X-axis data (independent variable), and the other transmits Y-axis data (dependent variable) For a given instrument TISA will generate the function Y=f (X) Thus, a typical application for TISA is generating a series of absorption spectra from infra-red spectrophotometers. , Concepts and terminology peculiar to this manual are defined in the glossary (refer to section 11) 2.0 MINIMUM REQUIREMENTS b. PDP-12A with 4K of core*^ and KW12A clock. LAP6-DIAL 2 (version 2) tape with the TISA program. 3.0 OPERATING PROCEDURE 3.1 Loading TISA a. TISA is a "load and go" program and is called from tape by the DIAL command -^LO TISA, unitJ where unit is the tape unit with the TISA tape. is 40^1; the restart address is 4^2j2f. The initial starting address To obtain correct results, the X-Y inputs for an interfaced instrument must be connected as described in section 8.0, PIN ASSIGNMENTS. 1 2 For a data buffer of reasonable length, 8K of core is suggested. LAP6-DIAL is hereafter referred to as DIAL. 1 3. 2 Operating Modes TISA has three modes of operation: a. Setup mode - b. A/D mode - c. Pause mode - experiment parameters are defined data is being acquired no data is being acquired When setup mode is terminated, TISA automatically enters pause mode and the data buffer display is activated. Any of the available commands may be issued at this time (refer to section 5.0). 3.3 Sense Switch 0 Options Sense Switch 0 (SSWj2l) is used in all three operating modes. In the setup mode, its settings and effects are: Value Note that Effect 0 none 1 erase all previous parameter input and initialize setup mode SSWJ2f is active during all of setup mode and that all user input is ignored when SSW^=1. The only function of SSWjZf during setup mode is to allow the user to restart parameter input from the beginning if he discovers an input error from which he cannot recover. During setup mode, raising and lowering SSWJ0 performs the same function as the following restart procedure, which may also be used: 12. 3. 4. Raise and lower the STOP switch Set the mode switch to LINC Depress the I/O PRESET switch Depress the START 2j2f switch During pause and A/D modes, the SSWJgl settings and effects are Value Effect ^ display data buffer 1 display HELP frame Raising SSW^I during A/D mode has no effect on data acquisition. 2 3- 4 Knob Options Knobs 0 and play. 4 provide flexibility for user control of the data buffer dis- Knob Movement Effect KNOB 0 Clockwise from center position Move window forward; the farther away from center position, the faster the motion. Counterclockwise from center position Move window backward; the farther away from center position, the faster the motion. Center position Freeze window. KNOB 4 Clockwise Move cursor toward the right side of the scope. Counterclockwise Move cursor toward the left side of the scope. 4.0 SETUP MODE 4.1 Using Setup Mode Setup mode allows the user to define his particular experimental parameters, such as number of instruments, sampling frequency, etc., by displaying a series of scope messages. The user responds by typing the appropriate characters on the keyboard. In setup mode, all scope messages are presented using the QANDA subroutine; the user must be familiar with the operating procedures of QANDA. Refer to DEC-12-FISA-D for a detailed explanation of QANDA. The following explanation deals only with those conventions that are peculiar to TISA. Setup mode is initialized by any of the following: 1. 2. 3. 4. Loading TISA from DIAL (refer to section 3.1) Raising SSW0 during setup mode (refer to section 3.3) Typing "S" during pause mode (refer to section 5.7) Restarting at 4020 (refer to asction 3.3) When responding to any of the following messages, an unfilled blank is interpreted as a zero; leading zeros are ignored. Thus, a response of 1 3 is identical to a response of 001, is 0000. Note that all messages must be answered and terminated according to QANDA conventions except where noted, TISA does not interrogate any user reply until a terminator is typed. 4.2 Message 1 Initializing setup mode clears the data buffers (fills them with zeros) and displays the following message: PARAMETER INPUT 1 2 LINCTAPE KEYBOARD Be usre that SSWjS^j^ now or all further keyboard input will be ignored. TISA alerts the user that SSWJ0=1 by causing message 1 to flicker. Type select option 1, LINCtape, or type 2 to select option 2, keyboard. A response other than 1 or 2 and a terminator will redisplay the message. 1 to Option 1 allows the user to recall from LINCtape a parameter list for a given experiment that was previously saved using the WRITE command in the HELP frame (refer to section 5.8). If option 1 is chosen, the following message is displayed: READ TBLk' UNIT _ Type the tape block and unit numbers that contain the desired parameter list, followed by a terminator. Only octal values are legal; nonoctal input will redisplay the read message. The user must know where his parameter list is stored; TISA has no file handling capabilities. After the tape block and unit have been specified, TISA tries to read in that parameter list. parameter list, If the requested tape block contains a previously defined setup mode is terminated and pause mode is entered. If the read message is redisplayed after TISA has read in the requested tape block, an illegal TBLK, i.e., one that does not contain a parameter list, has been specified. It is possible to request an illegal tape block that will not be caught. Because TISA cannot check for all possible errors, running TISA under such conditions could produce weird results. The user is cautioned to know the location of a stored parameter list. 4 Option requires parameter input from the keyboard and will advance to message 2 for definition of each instrument. 4.3 2 Message Message 2 requests information defining the parameters for a particular instrument. The message has the following format: 2 INSTRUMENT K is'_ (1 = analog, 2 =: encoded) STARTING POINT-_ _ TOTAL POINTSSAMPLING FREQUENCY=2 _ TISA will support up to five instruments, each of which must be defined in message 2. In the above di^lay, K is the number of the instrument currently being defined and is always in the range j2f-4. For example, the first instrument defined in message 2 would be displayed as: INSTRUMENT 0 IS*_ Four error conditions described below may be detected and noted by TISA when the values for message 2 are supplied, All input to message must be decimal; non-decimal input for any of the four responses will redisplay message 2. If TISA first detects any of the error conditions described below, the appropriate error message is displayed. An error in defining an instrument has no effect on the parameter input for a previously defined instrument; thus, if instruments 0 and 1 have been defined successfully but an error, such as non-decimal 2 input, occurs in defining instrument 2, message 2 is redisplayed for instrument 2 and the parameter definitions for instruments 0 and 1 remain unchanged. Note that if an error in the definition of instrument 1 is detected by the user while defining instrument 2, it can be corrected only by raising SSW^ and starting with message 1 again. The only legal values for the first response in message 2 are 1 for an analog instrument or 2 for an encoded instrument. Any other response will redisplay message 2. TISA will support a maximum of three encoded instruments. If an attempt is made to define more than three instruments, the message ERR ENC 5 is displayed and message 2 is redisplayed for the offending instrument when the error message is terminated The response for STARTING POINT can be any decimal .number up to five digits long, i.e. 0-99999, and is the value of the initial X coordinate in the data buffer display routines (see DATA BUFFER DISPLAY, section 9.0). TOTAL POINTS is the number of points that TISA will acquire and store in its data buffers, as distinguished from a detected point as described in SAMPLING FREQUENCY below. The response for TOTAL POINTS for any instrument must be a number greater than 0 and less than or equal to the number of points left in the data buffer, which is the maximum ntaraber of points available minus the number that has been allotted to previously defined instruments. The maximum number of points available depends upon the amount of core in the system configuration, according to the following scheme; AMOUNT OF PDP-12 CORE MAXIMUM NUMBER OF DATA POINTS AVAILABLE 4K 512 8K 46jef8 12K 87jei4 16K 12S00 16896 24K 20992 28K 25088 32K 29184 Thus, if instruments 0 and 1 are defined as having 608 and 1000 points, respectively, for an 8K machine, the maximum number of points available for instrument 2 is 4608 minus 608 for instrument 0 and 1000 for instrument 1, or 3000 points for instrument 2. If the user requests no points, the error message ERR 0 PTS is displayed. If more points are requested than there are left, i.e. the capacity of the data buffer is exceeded, the error message ERR BUF FULL 6 is displayed. Terminating either error message reinitializes message instrument. 2 for the offending The SAMPLING FREQUENCY determines the density or resolution of the spectrum. The X axis input is considered as a pulse.. For an analog device a pulse is a one bit increment of an analog channel; for an encoded device a pulse is an interrupt on one of the KW12A clock channels.. A point is said to be de- tected on the y axis whenever TISA receives a pulse on the X axis. The ratio of detected points to acquired points is defined as the SAMPLING FREQUENCY. If the user defines TOTAL POINTS to be 1000 and the SAMPLING FREQUENCY to be 5, TISA will detect 5000 points and every fifth detected point will be an acquired point. SAJyiPLING FREQUENCIES of or 1 mean acquire every detected point, a SAMPLING FREQUENCY of 2 means acquire every second detected point, etc. jef The SAMPLING FREQUENCY must be a number from 0 to 10. Requested sampling frequencies outside of this range display the error message ERR FREQ Terminate this error message? ^' ^ Message message 2 is reinitialized. 3 When an instrument's parameter definition has been successfully completed in message 2, TISA displays the following message: DOL 1 2 Type MORE INSTRUMENTS START to redisplay message 2 to define more instruments. TISA will with the instrument identifier (the K of message 2) incremented by one. Each instrument is defined in turn in this manner until option 2 of message 3 is selected. Type 2 if all the instruments 1 redisplay message 2 in this experiment have been defined. after typing 2 2, Terminating message 3 Pause mode is entered immediately with a response other than 1 or is illegal and redisplays message 3. If option 1 is selected; there are two possible error messages that may be If the user attempts to define more than five instruments, displayed. the error message ERR INST 7 is displayed. If the user attempts to define additional instruments when all the data storage has been allotted to previously defined instruments, the following error message is displayed: ERR FULL BUF Terminate either error message display; message 5.0 3 is then redisplayed. HELP FRAME AND KEYBOARD COMMANDS When the user is in either pause or A/D mode and SSW0=1, a HELP frame is displayed that briefly summarizes all keyboard commands available to the The HELP frame display is: user in either of these modes. A/D DIAL MODE CTRL/H HN P F PAUSE MODE GN S W C M L P F HALT ALL INSTRUMENTS HALT INSTRUIVDENT N POLARITY FREEZE GO INSTRUMENT N SETUP WRITE TAPE CATACAL MAGSPY LOADER POLARITY FREEZE All commands are issued by typing the letter (s) and then their action is implemented immediately. 5.1 DIAL The D command is active in either mode and is used to restart DIAL. Refer to the LAP6-DIAL Programmer s Reference Manual, DEC-12-SE2B-D. ' 5.2 Halt All Instruments Typing CTRL/H'^ when in A/D mode directs TISA to halt all instruments; data acquisition is terminated on all instruments and TISA enters pause mode. Whenever TISA enters pause mode, the message: PAUSE MODE is printed on the Teletype. CTRL/H is typed by pressing down the CTRL (control) key and simultaneously typing H,-in the same manner as using the SHIFT key. 8 5. 3 Halt Instrument n HN is a two character command that allows the user to halt a given instrument (put it into pause mode) without affecting the mode status of the other defined instruments. The first character of the command is H (for halt) the second character, n, is a number in the range 0-4 and defines the number assigned to the instriiment in message 2* Thus, the command H2 means halt instrument 2. Any number of intervening characters may be typed between H and the numeric argument, without interfering with the execution of the command HN, except for the character G. Thus, the command HAAA777BBB2 is identical N, to the command H2 because the nine intervening characters are illegal and The command H666PPP???2 directs TISA to halt instrument 2, but it is not identical to the command H2 because it executes the polarity ignored by TISA. command P (refer to section 5.4) three times before instrument 2 is halted. An HN command is acknowledged by the following message printed on the Teletype: HALT INSTRUMENT N where N is the user supplied value 0-4. If the HN command is typed for an instrument that has not been defined by the user or for an instrument that is in pause mode, it is ignored. ^Qi^^ize Display c Typing P polarizes or inverts the entire data buffer display. BEFORE P COMMAND For example: AFTER P COMMAND The P command does not destroy the integrity of the data in the data buffer but merely inverts it before it is displayed on the scope. If the data buffer is polarized when one P command has. already been issued, the display is restored to its normal form. If the P command causes the display to be inverted, TISA responds with the Teletype message: INVERTED If the P command causes the display to be normalized, TISA outputs the message NORMAL f / K J 9 > The P command can be issued as often and whenever the user chooses. 5. 5 Freeze The F command directs TISA to freeze the moving window display (see DATA BUFFER DISPLAY, section 9.0), thereby isolating the display on a given portion of the data buffer. Typing F when the window is frozen directs TISA TISA acknowledges the F command and indicates the to restart window motion. action taken by typing FREEZE or MOTION, whichever is appropriate. The user may issue the F command as often as he likes. The P and F commands are active in both pause and A/D modes. 5.6 Go Instrument n GN is a two character command issued in the same manner as HN (refer to section 5.3), but performs the opposite function; in A/D mode. GN puts an instrument Remember that arguments H and G cannot be intermixed in a For example, typing H followed by G erases the first half of an command. HN command and directs TISA to wait for the second argument of a GN command. Thus, the commands HG2 , HHHHHG2> and G2 are all identical. If instrument N is in A/D mode, TISA will ignore the command GN. When TISA initiates A/D mode for a given instrument, the message GO INSTRUMENT N is printed on the Teletype, where N is the instrument number JZf-4. Whenever TISA enters A/D mode it outputs the following message on the Teletype: A/D MODE 5.7 Setup Mode Typing the key can be 5.8 input. S causes TISA to enter setup mode so a new parameter list The contents of the data buffer are not preserved. Write The W command outputs the data buffers to LINCtapethis command by displaying the following message: EXPERIMENT NAME 10 TISA acknowledges The user can name his experiment with any combination of up to eight characters; input acceptable to QANDA is legitimate here. The Write command will generate TBLKs of output where K is the smallest number of tape blocks needed to store the portion of the data defined by the experiment. If the user had defined 1000 points of the data buffer area, 24-K then K is equal to four. The first two blocks contain the experiment name and the parameter list for the experiment just completed; they contain no data but enable the user to exercise the LINCtape input option during setup mode (refer to section 4.2). The experiment name will appear in the beginning of the first block of output exactly as it is typed in the name message above. For example, if the first block of output is assigned the name ABCD then this block when viewed via MAGSPY"^ will appear as follows: ABCD $ % AS JWBE * 9 9 6 % RY SS I&I5 6 % & After the name message, TISA displays the following Write message: WRITE XYZ (OCT) TBLKS FIRST TBLK= UNIT _ * where XYZ is the number of octal tape blocks that will be output and is the number 2+K described above. The user specifies in octal the starting TBLK and unit number; a non-octal response redisplays the name message. If the response to the Write message is legitimate/ TISA commences to write the data buffer plus the two header blocks. While writing, the display is maintained; however, all commands are ignored until this operation is finished. When the interrupt (ION) light comes on, the operation is finished. If this parameter list just output is ever to be recalled, remember the first TBLK specified in the Write message because it is this block that option 1 of message 1 (refer to section 4.2) requires. (This block number may also be determined using the MAGSPY program. Note that TISA considers TBLK 777 to be contiguous to TBLK 000. For example, if a request is made to write 20 TBLKs start) ing at TBLK 77^, the first 10 TBLKs are written on 110-111 and the last 10 TBLKs on 0-1. Data should not be output in this manner, however, because of difficulties created for related software, such as MAGSPY^. MAGSPY is a program used to examine data stored on LINCtape. DEC-12-UZSA-D and section 5.10. 11 Refer to 5.9 CATACAL Typing C exits TISA and loads the program. CATACAL which is very useful for Refer to DEC-12-UW1A-D for a description of CATACAL. data manipulation. 5. 10 HAGSPY Typing M exits TISA and loads the program MAGSPY, The CATACAL and MAGSPY commands both assume that a DIAL-V2 tape (not DIAL- MS) with the binary files CATACAL and MAGSPY are on unit 0. If the binary files are not present, the user will find himself in DIAL with the NO message on the scope. If a DIAL-V2 tape is not on unit J0, the results are unpredictable. 5. 11 Load TISA can load an arbitrary program by issuing the command L. A DIAL V2 tape must be on unit 0. The following load message is displayed: load' UNIT _ Type at least one character for the program name in acceptable QANDA characters and then type the unit where this program is located. No error checking is done for the unit argument; thus, if the user requests unit A, he gets unit l,etc. If the requested binary is a file on the requested unit, TISA will load it. If the file does not exist, the user will find himself in DIAL with the NO message on the scope. 5. 12 Polarize The P command in pause mode is identical to the P command, Polarize, in A/D mode (refer to section 5.4). 5. 13 Freeze The F command in pause mode is identical to the F command. Freeze, in A/D mode (refer to section 5.5). 6.0 TELETYPE USAGE TISA outputs messages to the Teletype to make the user aware of the present action. The following set of messages are in TISA's repertoire: 12 HALT INSTRUMENT N GO INSTRUMENT N MOTION FREEZE NORMAL INVERTED PAUSE MODE A/D MODE HANDS OFF (N=0-4) (N=j2f-4) A backlog of several messages may occur because the Teletype is a relatively slow device for TISA*s environment. TISA services legal keyboard commands immediately; the message (s) appropriate to the command(s), however, is typed afterward. If a command is issued while a message is being typed, the command is executed immediately and the message (s) appropriate to the command is put on TISA's backlog. TISA will never overload the Teletype but the user may do so by leaning on the P key. In this case, the integrity of the messages printed on the Teletype may be destroyed, but execution of the keyboard commands is maintained. If the Teletype becomes too overloaded with commands, the message HANDS OFF is printed. 7.0 DATA ACQUISITION TISA has the ability to acquire data simultaneously from five instruments. A given device must not transmit X axis data at rates that are faster than 2 milliseconds/point or data will be lost. If all instruments (maximum of are defined as encoded, the optimum rate obeys the following scheme: NO. OF ENCODED 3) OPTIMUM RATE INSTRUMENT 1 500 ys 2 1000 ys 3 1500 ys For analog devices, a one bit increment in the X axis potentiometer indicates to TISA that a point has been detected on the Y axis. For encoded devices, an interrupt on a KW12A clock channel (X axis input) indicates a detected point. The data that TISA acquires comes from the Y axis input. Each data point represents a 10 bit A/D conversion on one of the Y axis analog inputs, and is stored as a 10 bit single precision word. Each defined instrument is assigned a sector of contiguous core locations in the data buffer area, beginning at location 7000 of PDP-8 field 0 and continuing to the last location of the last PDP-8 field. The data sectors for each instrument are adjacent to one another; there are no data gaps between instrument data sectors. The data sector for instrument 0 always begins at the initial PDP-8 data buffer location (07000). For example, if the user defined TOTAL POINTS for 13 instrximents 0, 1, and 2 to be 512, and 2j3j3j2f, 3 {100^,3120, 3 octal), res- pectively, then the allocation in the data area for an 8K of core configuration is: DATA BUFFER ALLOCATION FROM TO INSTRUMENT (1 0 0 1000 0 1111 1 1 3717 2 1 0000 2120 1 1 3722 3723 to 1 7777 is unused) TISA starts acquiring data from an instrument upon receiving a Go command (refer to section 5.6). No action is taken on an instrument until the TISA does not require the data to be input in a periodic or time dependent fashion; pulses can be days or milliseconds apart. first pulse is received from the X axis- TISA will acquire data from an instrument until any one of the following conditions occurs: 1. the requested number (TOTAL POINTS), of points has been acquired 2. the user halts the instrument from the keyboard 3. the X axis potentiometer (analog instruments only) decreases 20 bits from its last value read Conditions represent internal instrument halts. If a halt message is printed on the Teletype and the halt was not requested by the user from the keyboard, then the instrument halt was internal. All three conditions 1 and 3 cease data acquisition for the given instrument and an appropriate message is printed on the Teletype. 8.0 PIN ASSIGNMENTS There is only one correct way to connect the X~Y inputs from an instrument to the PDP-12, regardless of the particular system configuration. Let instrument K be the Kth instrument defined during setup mode for K=j8,l,2,3,4 and let N^^ be the n-amber of analog instruments that were defined previous to instrument K. 1. The X-Y inputs must then obey the following rules: If instrument K is analog, its X axis input is connected to analog channel IjZf+K for K<4, If K«4, the input is connected to analog channel 20.^ The fifth channel requires the analog extension (channels 20-27) which is not standard PDP-12 hardware. 14 \ 2. If instrument K is encoded, its X axis input is connected to clock channel 1+K-N^,. 3. The Y axis input for instrument K is analog channel 14+K for K<4. For K=4, the input is connected to analog channel 24. Consider, for example, the following configuration: CLOCK INST 1 GENERAL CONFIGURATION CLOCK X AXIS The fifth fhannel requires the analog extension (channels 20-27) which is not standard PDP-12 hardware. 15 ANALOG INST 0 INST 1 Y AXIS X AXIS INST 2 INST 3 INST 4 INST INST TYPE N. X AXIS Y AXIS 0 ANALOG 0 ANCH 10 1 ENCODED 1 CLOCK 2 ANALOG 1 ANCH 12 ANCH 14 ANCH 15 ANCH 16 3 ENCODED 2 CLOCK 2 ANCH 17 9.0 DATA BUFFER DISPLAY K 1 The data buffer display has the three following features: 1. A moving window display controlled by A/D Knob 0 and the keyboard 2. A cursor superimposed on the data buffer display and controlled by A/D Knob 4 3* X-Y decimal coordinate display of cursor position The 10 bit values in the data buffer are scaled to to prevent scope "wrap-around." 9.1 9 bits prior to display Moving Window Because the scope can display a maximum of 512 points at any one time and the data buffer has a maximum capacity of 29,184 points, the moving window display is used to view any 512 contiguous points of the data buffer, starting at any given point, simply by rotating A/D Knob The moving window is 0. very similar to that used in MAGSPY. Consider the data buffer as a ring 16 located behind the VR12 scope, with the initial and terminal data points being contiguous, that can be turned by a wheel, namely, A/D knob j?; the scope the window(The phrase moving window is actually a misnomer because it is the data buffer that moves.) When knob 0 is in its center position, the display is stationary. When A/D knob 0 is moved clockwise from the center position, the data buffer (the ring) appears to move from right to left across the scope. The velocity of the moving window increases with the clockwise movement of A/D knob 0 from the center position. The exact opposite occurs for counterclockwise movement of A/D knob 0. The data buffer appears to be moving from left to right across the scope. When the display is frozen under the keyboard command F, knob 0 has no effect. When TISA enters pause mode for the first time (after being loaded from LINCtape) the display is frozen and the leftmost scope point is the first point for instrument 0. , 9. 2 Cursor Display A cursor is superimposed upon the data buffer display and can be positioned over any of the 512 points in the display by rotating A/D knob 4 if knob 4 is moved to its furthermost counterclockwise (leftmost) position, the cursor will be imposed on the leftmost point of the scope display. Similarly, if knob 4 is positioned to its furthermost clockwise (rightmost) position, the cursor will be imposed upon the rightmost scope data point. Intervening knob positions will yield intervening cursor positions. The cursor appears on the scope as a vertical line ( and normally "sits" on top of ) the display point. However, for those cursor points that do not allow enough room at the top of the scope for the cursor to sit comfortably, the cursor I is displayed beneath the cursor point as the following example shows. CURSOR ABOVE CURSOR BELOW 17 It should be noted that knob cursor relative to the scope. has no control over the position of the If the window is frozen and the cursor is I inches from the left side of the scope, the cursor will remain fixed at I inches from the left of the scope if the window movement is started. The relationship of the cursor to the data buffer, however, changes because the data buffer is moving across the scope. 9. 3 X-Y Coordinates If the cursor is sitting on a defined portion of the data buffer, its X-Y coordinate position is displayed on the scope in the following manner: X--X_ x<^x Both X and Y are non-negative decimal integers; the range for X is 0391829; the range for Y is 0-511. Leading zeros and the point 00000 are not displayed. If both the X and Y coordinates are 0, the coordinates are displayed as: X= If the cursor is positioned over an undefined portion of the data buffer, the X~Y coordinates are not displayed at all. The Y coordinate reads the amplitude (height) of the cursor*, the value 0 is the bottom of the scope and the value 511 is the top of the scope. The value of the X-coordinate depends upon ttie cursor's absolute position within the data buffer and the starting points and sampling frequencies assigned by the user during setup mode. Each instrument was assigned a sector of the data buffer after replying to TOTAL POINTS in message 2 (refer to section 4.3). When the STARTING POINT value was input, an initial X coordinate to the first data point of the data sector for that instrument was assigned. Consider the case where the sampling frequency is 1, the STARTING POINT is 9000 for instrument K, and the cursor is positioned over the initial data point of the data sector for the instrument K. If the cursor is moved 18 from left to right with the window frozen and the cursor at the far left of the scope, the X coordinate will read successively: 9000, 9001, , 9009, 9010, , 9510, 9511 assuming TOTAL POINTS is greater than 511. Because the STARTING POINT (initial X coordinate) is arbitrary and data sectors are adjacent to one another in the data buffer, it is not unusual for the X coordinate to jump as the cursor crosses data sectors. Suppose the user defined TOTAL P0INTS=1 for instruments 0, 1, and 2 and STARTING POINTS=9i2f00 , 5, and 47311 respectively. If the cursor is positioned over the first (and last) data point for instrument 0 and moved from left to right, the X coordinate will read respectively (and discontinuously ) 9j0j2fJ2f,5,47311 As long as the cursor stays within a data sector and moves forward across it via A/D Knob 0 or 4 or both, the X coordinate will increase in value. The difference between any two X coordinates within a data sector for a given instrument is the SAMPLING FREQUENCY of that instrument. In the same case, if the SAMPLING FREQUENCY is three, then the successive X coordinate readings are: 9000, 9002, For a SAMPLING FREQUENCY of 9000, 9010, , 9021, 9030, , 10530, 10533 , 14100, 14110 the readings are: IjZf, , 9090, 9100, With a SAMPLING FREQUENCY of 10, the data acquisition routines acquire 1 point for every 10 detected and they are stored as successive data points in the data buffer. ordinate display. This difference, therefore, is reflected in the X coThere is no X-Y display over undefined areas of the data buffer because there are no arguments (STARTING POINT, etc.) for the X-Y display routines to use. The X-Y coordinates are displayed on hardware channel 1, and the data buffer is displayed on hardware channel 2. To see both displays the channel select knob should be set to the position In the event that the data buffer display and X~Y readout overlap, they can be viewed separately by selecting the appropriate hardware scope 1 & 2. channel. 19 OVERLAP CONDITION 10.0 INSTRUMENT INTERFACE TISA plots the incoming data from each of up to five instruments as a dependent variable versus an independent variable. The dependent variable, for example the intensity at a given frequency for an infra-red spectrophotometer, must be an analog signal within the range of the analog-to-digital converter contained in the particular PDP-12. The standard voltage range is -1 volt to +1 volt. The independent variable may be a monotonically increasing voltage as shown in figure 1 or a pulse train as shown in figure 2. rate on any and all instruments is 2 Note that the fastest sampling milliseconds per point. The maximum slope of an analog dependent variable can be found by the following formula: e,1^v^^^ maximum slope ^ volts 10 3 1 , samples 2 msec where X = voltage range of particular analog-to-digital converter system For the encoded or pulsed dependent variable the input waveform need only pass through the desired threshold whenever an analog sample is required. The desired trigger level is set by the threshold knob on the KW12A input panel. threshold knob is not calibrated but the limits are approximately + 6 volts and the potentiometer controlled by the threshold knob is approximately linear. slope control defined as shown in figure 2 20 The is also on the KW12A input panel. The +1 volt 0 volts max, slope'^« = 2mvolts/2msecs -1 volt time Figure 1 Monotonically Increasijnig Voltage »Voltage range for standard analog to digital converter positive trigger on this slope +6 volts 0 negative trigger on this slope volts rH O CO 0) U rC 4l -6 volts time minimum time between triggering points = 2 msecs Figure 2 Pulse Train 21 The setup procedure for instrument N, where N = section 8.0. 0 , 1 , 2 , 3, 4 , is described in The setup procedure details which input channels are to be used. Typical analog independent variable sources are retransmitting pots or ramp generators while pulsed sources are typically shaft encoders or oscillators. Several examples of typical interfaces were tried in the PDP--12 engineering laboratory. A Perkin Elmer model 621 infrared spectrophotometer was interfaced by placing a retransmitting pot on the pen drive gear and either a retransmitting pot or an incremental shaft encoder on the main chart drive gear. In the case of the Perkin Elmer instrument, the pickup devices were attached via extra chart drive gears supplied with the instrument. 3400S series devices. The potentiometers were Bourns The incremental shaft encoder was a Data Technology model #C2 5-100-4 0 with two one-hundred cycle/turn pulse outputs 90° out of phase The two outputs can be used to detect the direction of rotation and/or produce a 400 cycle/turn output. However, for this application, either of the outputs alone was sufficient. ^The specification of these part numbers in this manual does not constitute DIGITAL EQUIPMENT CORP. sanction or guarantee, but is intended as an aid for the user. 22 11.0 GLOSSARY ACQUIRED POINT A/D MODE INSTRUMENT TISA an acquired point is one that has been retrieved from the Y axis of a defined instrximent and stored in TISA's data buffers (see also SAMPLING FREQUENCY and DETECTED POINTS) an instrument is said to be in A/D mode (running) when TISA is accepting information from its X axis, TISA is said to be in A/D mode when at least one of its defined instruments is in A/D mode. ANALOG INSTRUMENT one of two types of instruments that may be interfaced to TISA. An instrument is defined as analog if its X axis input runs from a potentiometer to a PDP-12A analog channel, CURSOR a vertical line superimposed upon the data buffer display and controlled by A/D knob 4. CURSOR POINT that point in the data buffer display upon which the cursor is sitting. DATA BUFFER the amount of core available on the PDP-12 that has been reserved for acquiring points. The data buffer is a function of core size and ranges from 512 to 29,184 words. DATA POINT a signed 10 bit single precision A/D conversion or word. DATA SECTOR a contiguous set of core locations in the data buffer that has been assigned to a defined instrument. A data sector can be anywhere in length from 1 to 29,184 core locations. DEFINED DATA AREA the portion of the, data buffer that contains the data sectors of all defined instruments. DEFINED INSTRUMENT an instrument is defined if it has been assigned a set of parameters during setup mode. DETECTED POINT for a given instrument, a point on the Y axis is detected if TISA has received a pulse from the corresponding X axis. ( [ 23 ) one of two types of instruments that may be interfaced to TISA. An instrument is defined as encoded if its X axis input runs from a shaft encoder to a KW12A clock channel, a message that can be displayed on the scope when TISA is in either pause of A/D mode which briefly summarizes the keyboard cormands that are available to the user, interfaced to TISA for data acquisition. Instruments are either analog or encoded, depending upon the manner in which they are interfaced, the Kth instrument defined during setup mode; K = J3,l,2,3,4, an instrument in A/D mode that is halted by a means other than by an HN or CTRL/H keyboard command is said to have been internally halted, the state of an instrument at any point in time or the relationship that it bears to TISA is called its mode. An instrument is either in A/D mode or pause mode. Undefined instruments are in pause mode by default. the state of TISA's operation or its relationship to the user at any given point in time is called the mode. TISA has three modes: A/D, pause, and setup. a numeric value that is used to define an instrument, e.g. TOTAL POINTS. the set of all parameters for all defined instruments. an instrument is in pause mode whenever TISA is not accepting information from its X axis. TISA is in pause mode whenever all of its defined instruments are in pause mode. X axis information transmitted by a defined instrument. For an analog instrument, a pulse is a one bit increment on the X axis potentiometer. For an encoded instrument, it is an interrupt on one of the KW12A clock channels. a PDP-12 subroutine that facilitates question and answer type of dialogue via the scope and keyboard. (Refer to DEC-12-FISA-D.) an instrument parameter that is the ratio of DETECTED POINTS to ACQUIRED POINTS. SAMPLING FREQUENCY determines an acquired spectriim's resolution. TISA is said to be in setup mode when the user is defining his instruments (messages 1-3). the sum total of an instrument's acquired points is called the spectrum of that instrument. Sense Switch 0. STARTING POINT an instrument parameter that defines the initial X coordinate for the data buffer display of the first data point of the instrument's data sector. TBLK an abbreviation for LINCtape block. TOTAL POINTS an instrument parameter which equals the total number of points that TISA will attempt to acquire when the instrument is in A/D mode. The length of an instrument's data sector is equal to its TOTAL POINTS. X AXIS one of two of an instrument's inputs to TISA that are required to generate the instrument's spectrum. The X axis input is the independent variable. y AXIS one of two of an instrument's inputs to TISA that are required to generate the instrument's spectrum. The Y axis input is the dependent variable. ?5 A Internal Description Appen':^.ix This appendix assumes that the reader is familiar with TISA*s external characteristics as described in sections 1 through 11 of this manual. A.l Interrupt Routines A. Data Acquisition Routines A. Teletype Routines A. Keyboard Routines A. LINCtape Routines A. Setup Routines A, 8 A. Memory Check Routine Flow Charts A. 10 Core Allocation A.l INTERRUPT ROUTINES The interrupt routines handle interrupts in both modes. In either mode, only the following central processor registers are preserved: AC, LINK, PC, IF, and DF. The entry and exit routines for P-mode and L-mode interrupts are different but the interrupt dispatching is common to both. Interrupts remain off until the routines exit. I.e., the interrupt routines can not be interrupted. An L-mode interrupt goes to a routine INTL which saves the AC and LINK, sets up a LINK node jump at RTNJMP, an>LDF instruction at RTNLDF and an LIF instruction at RTNLIF, and sets the interrupt mode switch (INTMOD) to 0. A P-mode interrupt saves the AC, link and sets the interrupt mode switch to 7777, before going to interrupt dispatch. The interrupt dispatch routines always check three devices in the following order: clock, keyboard, and Teletype. If the clock flag is set, the routine dispatches a call to the routine TISA for data acquisition. If the keyboard flag is up, a character is read in and stored in location KBDBUF. If the Teletype flag is up, it is cleared, then location ADMESS is checked to see if a character needs to be typed (C (ADMESS )NE to 0 means type C (ADMESS)). If a character needs to be typed, it is; the location ADMESS is advanced by one; and the location TTYFLG is set to C (ADMESS) - non zero - to indicate that the Teletype is busy. If no characters need to be typed, then TTYFLG is set to 0 to indicate that the Teletype is not busy. When all devices have been either check or serviced, the AC and link are restored and the INTMOD switch is IS Zed to implement one of the two following exits: P-MODE ION JMP L-MODE LINC DJR I 0 RTNLIF, RTNLDF, 0 0 lOB ION RTNJMP, 0 DATA ACQUISITION When the data acquisition routines are called they check all five devices (even if some devices are not defined or not selected) because it takes only 14.4 microseconds to determine that a device is not selected. The first task of the data acquisition routines is to preserve the clock bits by executing: A. 2 CLSA DCA STATUS A-1 * An analog device must be checked whenever there is a clock overflow, not because the device is ready but because it might be ready. The only way to determine a 1 bit increase of an X-axis analog channel is to read it periodically. The clock is set to overflow and causes an interrupt on overflow once every Analog devices, therefore, are checked once every 2 milliseconds (optimum speed for analog devices under the worst circumstances) two milliseconds. An encoded device is checked whenever its clock channel indicating it is ready. than 2 milliseconds. causes an interrupt Note that encoded devices can run at speeds much faster For instance, TISA could handle one encoded device and no others without loss of any data, if the rate of interrupt was faster than Because the optimum speed varies amoncr all possible user 1/2 millisecond/point. defined configurations^ the upper limit in the user's manual is a worst possible case restriction. There are only 4 bits in the clock status register that are of interest to the data acquisition routines: 1. Clock overflow, bit 0 2. bit 6 3. Interrupt on channel 1, Interrupt on channel 2, bit 8 4. Interrupt on channel bit 10 3, Each device has a select word associated to it whose function is to mask out all status bits except the one that determines if the device is ready to be checked. For example, the select word for an analog device is 4000. The coding that determines if a device needs to be checked is identical for all devices. For device K, the coding is: TAD AND SNA JMP DCA JMS STATUS SELDVK ( I) I NXTDV DVTYP KINPUT Devices are deselected by clearing their select words. The select word for an undefined device is always 0, Every device has a set of parameters associated to it that are required for checking and servicing the device. If a device needs to be checked, the subroutine INPUT is called; the parameters for the device are directly beneath the call: Af JMS I 100 100 EHIDVK, NXTDV, KINPUT XAXDVK YAXDVK /END OF LIST /CONTINUE RTN /HLT RTN 0 NXTDV JMP (I) TAD STATUS The INPUT routine retrieves the parameter list, checks the devices, and returns. If the device is to be halted, input returns to the halt return; otherwise it returns to the continue return. Each device is checked in an identical manner; the last device checked returns to the interrupt dispatch routines so that the keyboard and Teletype may also be checked. After retrieving the parameter list, INPUT checks the high order bit of DVTYP to determine if the device is analog or encoded. DVTYP = 4000 for analog and OXXX for encoded devices. If the device is analog, the routine ANALOG is called to check for a 1 bit increment of the X axis. ANALOG samples the X axis (NEWSAM) and compares the value read with OLDSAM, which holds the X axis A/D value for the last detected point. If NEWSAM is greater than OLDSAM, a point has been detected. At this juncture, NEWSAM replaces OLDSAM and ANALOG returns in line (ANARTN) for further checking of the device. If ANALOG finds no increase, NEWSAM is checked for a 20 bit decrease. If the X axis has dropped 20 bits, ANALOG exits to the halt return; otherwise, it exits to the continue to next device return. For encoded devices or analog devices that make it to ANARTN, INPUT advances and checks the detected point counter. When this counter goes to zero, a point is ready to be acquired; otherwise, INPUT exits to the continue return: ISZ JMP I I FREQ INPUT If the device is ready, INPUT resets the detected point counter, sets up a 15 bit buffer address (CDF INST and 12 bit address), SAMs the Y axis, stores away the value, and resets the field to 0 (CDFO) INPUT then compares the • A- current device address to the terminal device address to determine if all points have been acquired and, if so, exits to the halt return. If the device is not finished, INPUT increments the current address by 1 and exits to the continue return. Returning to the halt return affects the values of 2 parameters 0 is put into SELDVK to deselect and the device number (0-4) is put into HSWITK for subsequent use by the routine CHKSWI, TELETYPE ROUTINES The Teletype routines work in conjunction with a que stack capable of hold-ing the addresses (of the first character of each message) of twenty messages. Messages go on the que via the pointer QUEIN, and come off via the pointer A. 3 QUEOUT; QUECNT always holds the number of untyped messages on the que. The que stack is ringed so that the address of message 20 is adjacent to the address of message 1. Each message consists of a string of 8 bit ASCII characters followed by the message terminator 0000. The subroutine MESCHK takes messages off the que, and the subroutine QUPUT puts them on the que. A. 3.1 MESCHK MESCHK first looks at QUECNT to see if it is zero. When QUECNT is zero, there are no more messages waiting to be typed so MESCHK exits in this case. Location ADMESS is the pointer to the current message being typed; once ADMESS initialized by MESCHK, it is controlled by the interrupt routines (see above). If QUECNT is non-zero (message waiting), MESCHK looks at ADMESS (TAD I ADMESS). If the AC is non-zero, a message is in progress and MESCHK exits. If the AC is is zero, MESCHK must verify that the last character of the message has been typed; this is done by checking the location TTYFLG. If TTYFLG is non-zero, the TTY is busy and MESCHK exits. If the TTYFLG is zero, MESCHK takes the next message off the que: TAD DCA I QUEOUT ADMESS QUEOUT is advanced to the next message; if it is at the end of the que, it is reset to the start of the que. The QUECNT is decreased by 1 and the first character of the message is typed to initiate the Teletype interrupt routines that will finish the message. MESCHK then exits. A. 3.2 QUPUT When QUPUT is called, the address of the message is in the AC. QUPUT saves the message in QSAVE and checks QUECNT to see if the que has room for only one more message and, if so, the message in QSAVE is ignored and the busy message (HANDS OFF) is put on the que instead. If QUPUT makes it by the busy message, it checks to see if the que is full and, if so, QUPUT exits. If the que is not A- full, the message is put on the que via QUEIN; QUEIN is advanced to the next location and QUECNT is incremented by 1; QUPUT then exits. KEYBOARD ROUTINES All incoming characters are dispositioned by the subroutine KEYBRD, when KEYBRD is called it immediately checks location KBDBUF to see if the interrupt routines have retrieved a character If KBDBUF is zero, no character is waiting and KEYBRD exits. If KBDBUF is non zero, a character is waiting. The waiting character is put into location CHAR which is part of the character look up table, and KBDBUF is cleared (set to zero) so that the waiting character will be dispositioned only once. KEYBRD next searches the character table. Each defined character is assigned a consecutive pair of core locations. The first location in the pair is the 8 bit ASCII code of the defined character, the second location is JMP to a routine appropriate to the character. The last pair in the table is: A. 4 • CHAR, 0 JMP I KEYBRD The reason for this pair is to ensure that all keyboard characters will generate a match in the table search routine. All undefined characters cause KEYBRD to exit. Starting at the top of the table, KEYBRD compares each defined character with the waiting character in location CHAR. The search routine ISZ's by the jump instructions in the table location. JMP X is never compared with CHAR. When a match is found at location A, KEYBRD executes the jump instruction at location A+1 via: TAD DCA CLOC A+1) .+1 /JMP INST 0 The following is an explanation of the various routines that are called from the character table. A. 4.1 D Routine This routine restarts DIAL with lOF and XOB clear by jumping to the following bootstrap: 4015 4016 4017 LDF 3 RCG I 7300 CTRLH Routine The function of this routine is to put TISA into Pause mode. Location MODE determines whether TISA is in pause or A/D mode; 0 = pause, 7777 = A/D. A. 4.2 A- CTRLH first checks MODE; if it is zero, CTRLH exits {JMP I KEYBRD) If TISA is in A/D mode, CTRLH sets MODE to 0, sends 0 to GLEN to disable all clock interrupts, . sets the select words for all devices to 0, puts the address of the pause mode message in the AC, calls QUPUT, and then exits. A. 4. 3 H Routine The character H is the first in a two character command of the form The function of the H routine is to enable the N half of the command. HN{N=0,4). H does this by setting the word HSWIT to 7777. GSWIT (sets it to H also clears the go switch because there is another two character command GN. HSWIT and GSWIT cannot be simultaneously enabled, i.e., TISA waits for either the N half of G or the N half of H, but not both. After setting HSWIT and GSWIT, 0) H exits. A. 4. 4 G Routine G has the opposite effect of H; i.e., GSWIT is set to 7777 and HSWIT is set to 0. A. 4. 5 P Routine The fimction of the P routine is to complement the polarity word POLAR. Depending upon the value of POLAR, the display routines do or do not complement a data word before it is displayed. TAD SRO The logic employed is: (DATA WORD) I POLAR, /7777 COMPLEMENTS COM After the polarity word is complemented, the P routine checks its value and sends either the normal or inverted message to QUPUT, then exits. F Routine Window motion depends upon the value of one word, FREEZE. the display routines is as follows: A. 4. 6 SRO I JMP JMP (FREEZE) (MOTION) The logic in FREEZE, The F routine dispositions the "F" command and the freeze word in a manner exactly analogous to the P routine. A- The function of the S routine is to initialize setup mode. If TISA is in A/D mode, S exits; if not, then the interrupts are turned off and S jumps to the setup routines at location SETUP. A, 4. 8 W Routine If TISA is in A/D mode, W exits. If TISA is in Pause mode, W calls the LINCtape write routines (see LINCtape Routines, section A. 5. 3). A. 4. 9 L Routine If TISA is in A/D mode, the L routine exits; otherwise, L jumps to a routine that displays the following QANDA message: LOAD UNIT Which allows the user to specify program name and unit. When the user terminates the load message, the first character of the answer buffer is checked for 00; 00 means the user input no program name to QANDA and will redisplay the load message. When the message is terminated, the routine KLOAD is called, whose function is to transfer the QANDA answer buffer to DIAL'S monitor parameter table (for a full discussion of the table see DIAL EDITOR V2 internal description DEC-12-ZW7A-D) at locations E6+2 (2373) - E6+6 (2377). The program name is first transferred, one half word at a time, to an intermediate table (LODPTR) Eight characters must be transferred for the program name to . meet the requirements of the E6 table. Unused portions of a QANDA answer buffer contain 00. Unused portions of the E6 table must contain 77. If the user requested the program name ABCD, the two answer buffers would look as follows: KLOAD BUFFER BUFFER ANSWER, 74 01 /74A 02 03 /B C 04 00 /D ~ LODPTR, 01 02 03 04 77 77 77 77 00 00 / 00 74 /-74 XX YYYY /UNIT /AB /CD /UNIT The KLOAD routine skips over the first QANDA 74 and terminates name transfer when it uncovers the second 74. The response for unit in the QANDA answer buffer is stripped to 3 bits and stored in the LODPTR table after the name. 60 (0) is unit 0 and 01 (A) is unit 1, etc. When the LODPTR table has been set up, KLOAD puts LODPTR-1 into the AC and calls the routine LOADER. A- The function of the routine LOADER is to transfer the table whose address-1 is in the AC to the E6 table and call the DIAL loader. All program calls in TISA to DIAL binary files realize that setting up the E6 table and calling the DIAL LOADER is sufficient work to accomplish the task. LOADER turns off the interrupts^ clears the XOB and special functions, registers and reads the Editor's grid table into LDFl in case the DIAL LOADER decides to display "NO". The AC table is transferred to the E6 table and then the DIAL LOADER is read in and started. The logic is highly similar to executing an LO coiranand in the DIAL EDITOR. M Routines The function of the C and M routines is to call the programs CATACAL and MAGSPY, respectively. Both routines will execute a JMP 1 KEYBRD if TISA is in A/D MODE. Otherwise, the address, CATPTR-1 or MAGPTR-1, is loaded into the AC and the LOADER routine is called. C and A. 4. 10 CATPTR, 0 301 2401 0301 1477 0 C and iM /CA /TA /CA /L /UNIT MAGPTR, 1501 0723 2 031 /MA /GS /PY 7777 /UNIT 0 both require the programs to be on unit 0. C, M, and L all require a DIAL V2 tape to be on unit 0. DIAL MS will not work because the MS LOADER is logically different from the V2 LOADER. A. 4.11 NUM Routine The function of the NUM routines is to interpret numeric characters. first strips the ASCII and stores the number in TEMP. NUM compares TEMP NUM with DEVNUM, the number of defined devices, to check for an undefined number, exiting in such a case. If the number in TEMP is a defined device number, checks NUM HSWIT for 7777. If HSWIT is set, NUM clears it and calls the HALT routine. If HSWIT is not set, NUM checks GSWIT. If GSWIT is set, NUM clears it and calls the GO routine; otherwise NUM exits. A, 4. 12 HALT Routine The HALT routine checks the device select word to see if the device is in Pause mode and, if so, HALT exits. If the device is in A/D mode, HALT sets the select word to 0 to deselect the device, calls the routine HLTMS to put the Halt message on the Teletype que, and then exits. A. 4. 13 GO Routine The GO routine first checks the device select word to determine if the device is in A/D mode and, if so, GO exits. If the device is in Pause mode, GO A- calls GOMS to put the go message on the que. With the aid of 4 tables and relative to the device number in TEMP, the GO routine next initiates the device. Device K has 2 tables associated to it: TIADK and TISTRK, TISTRK holds the parameters that define the device, and TIADK holds the addresses within the data acquisition routines of these parameters. To initiate a device, six parameters must be set up within the acquisition routines: starting address (2 words), select word, sampling frequency (variable), sampling frequency (fixed), and initial X axis SAM. There are two other tables that are shared by all devices VALTAB and ADRTAB: VALTAB, TISTRO TISTRl TISTR2 TISTR3 TISTR4 ADRTAB, TIADO TIADl TIAD2 TIAD3 TIAD4 Note that for device K - whose value is in TEMP - VALTAB-fK, ADRTAB+K point to TISTRK, TIADK respectively. The GO routine employs the above logic in selecting the tables appropriate to device K. GO further sets up a SAM instruction because analog devices require an initial X-axis SAM at location GO then sets HSWITK to 7777 for the routine CHKSWI turns the interrupts off, and transfers the device parameters to the data acquisition routines. The interrupts must be off during parameter transfer because it is possible to OSDVK. , get an interrupt from device J when device K is only partially initialized. Such a circumstance could produce adverse results for device K. The interrupts are off for 200 microseconds, which presents no problem for the data acquisition routines. Once the device is initialized all clock interrupts are enabled and MODE is checked. que. If TISA is in Pause mode, the A/D mode message is sent to the GO then sets MODE to 7777, turns the interrupts back on, and exits. LINCTAPE ROUTINES There are six LINCtape routines that enable the user to either read a parameter list from LINCtape or write his data buffers onto LINCtape. A. 5 A. 5. 1 READ Routine If the user selects the LINCtape option during setup mode, TISA calls the READ routine, which displays the QANDA message: READ UNIT _ TBLK When the message is terminated, READ sets a pointer to the QANDA answer buffer A- and calls DORDC. DORDC Routine DORDC calls the routine TPARGS whose function is to translate a QANDA message which holds LINCtape arguments. If TPARGS returns to P+1, the QANDA input was illegal and DORDC implements the error exit, which is simply a recall to the READ routine. If TPARGS returns to P+2, then location TBLK holds the A. 5. 2 requested tape block; UNIT holds the low order unit bit i.e., UNIT=10 or 0; and the XOB holds the high order unit bits. Using the arguments from TPARGS, DORDC reads the requested TBLK into locations 7000-7377 (start of the data buffer), executes an I/O preset to clear all flags and the extended unit bits, resets no pause, and transfers the parameter list at 7000-7377 to the setup initialization table at 6000-6144. If the user requests a TBLK that does not contain a legitimate paramater list, DORDC checks the only value in the table that could be fatal to TISA and the user, to wit, the number of defined devices. The function of setup mode is to fill the initialization table with the user's parameters. As the user defines more instruments, more information is input to this table. When setup mode is terminated, TISA takes the information from the initialization table and distributes it to appropriate locations within the program. The number of user defined devices is in the table and determines the length of the table transfer. If the number of defined devices is greater than the maximum number allowed, TISA will extend beyond the initialization table and transfer arbitrary values to arbitrary locations; such a situation is quite obviously fatal. If the number of defined devices is too large, DORDC executes the error exit; otherwise, DORDC goes to the last leg of the setup routines (QADUN-f3), just as if input was from the keyboard. WRIT Routine WRIT first shuts off the interrupts so that the user cannot inhibit the write sequence via the keyboard. WRIT then retrieves the number of blocks to write from the initialization table (loc, BLKCNT) translates it into DIAL A. 5. 3 codes, , and puts it into the text field of the QANDA write message. message is then displayed: WRITE FIRST UNIT _ XYZ (OCT) The following TBLKS TBLK = Where XYY is the number described above. When the user terminates the message, WRIT sets a pointer to the QANDA answer field and calls DOWRC. A-10 A. 5. 4 DOWRC Like DORDC, DOWRC calls TPARGS the routine WRIT . ; at the error return If there is no QANDA input error, arguments for DOMTP: WRI I (U) (P+1) is a recall to DOWRC sets up the following then calls DOMTP. to ARGHI, MBLK\TBLK to ARGLO; When DOMTP returns to DOWRC, the operation is finished and DOWRC turns the interrupts on and hangs up in the idle loop. A. 5. 5 TPARGS The function of TPARGS is to retrieve the TBLK and UNIT arguments from a QANDA answer field and to return to P+l for input error and P+2 for no error To achieve this end, TPARGS enlists the aid of the more general QANDA numeric decoder DIGCHK, a routine that is heavily exercised during setup mode. has 3 returns: JMS I KDIG DIGCHK /CALL /NON DECIMAL CHAR RTN /QANDA END OF QUES FIELD RTN /NORMAL RTN OCTAL NUM IN AC . TPARGS changes location UPLIM of DIGCHK to minus 10 (l*s complement) so that non-octal input will be illegal. TPARGS then calls DIGCHK, retrieving in this manner one numeric argument at a time. If DIGCHK returns TPARGS to P-fl, then TPARGS returns to the calling program at P+1 (the TPARGS error return) The . arguments for TBLK are rolled and packed into location TBLK. DIGCHK is called until it executes the end of field return at whicn point TPARGS calls DIGCHK one more time for the UNIT argument. The low order unit bit is put into bit 8 of location UNIT and the two high order unit bits go to bits 10 and 11 of the XOB. After the tape arguments have been set up, TPARGS restores UPLIM to its regular value and returns to error or no error. A. 5.6 P-f 2 . TPARGS always restores UPLIM before exiting, DOMTP The function of DOMTP is execute a series of tape transfers as indicated Currently, only DOWRC calls DOMTP, but DOMTP is general by a list of arguments. to. enough in nature to read data as well as write it. BLKCNT = - ARGHI a = ARGLO == LDFSTR = The arguments for DOMTP are: (the number to do) LINCtape instruction initial MBLK\TBLK initial LDF DOMTP first retrieves and sets up its arguments, then issues a tape instruction and calls TPWAIT, which is simply a routine to hang in the idle loop until the A-11 When the tape is finished, DOMTP adds 1 to the TBLK and 1 to the MBLK, then checks the MBLK to see if it advanced from 7 to 0 When the MBLK goes to 0, DOMTP resets it to 4 and adds 1 to the LDF instruction All tape transfers are done via the data field. at TPLDF, DOMTP then iterates the tape process^ counting each step. When the operation is finished, DOMTP tape operation is complete. stops the tape^ clears the extended unit bits, and exits. A. 6 DISPLAY ROUTINES The Display Routines present the user with one of two displays, depending upon SSWO: A. 6,1 Help Frame, or Data Buffer Display. DSCHLP Routine The DSCHLP Routine (help frame) is driven by 4 tables: HLPTAB, which (1) contains the DIAL codes for all the characters displayed in the help frame plus a number of control characters that are not displayed; (2) VCTAB, which is a table of scope vertical coordinates and determines the vertical alignment of HCTAB^ which is a table of scope horizontal coordinates (3) the help frame; and determines the horizontal alignment of the help frame; and (4) GRDTAB, which is the QANDA table of grid patterns. The following codes in HLPTAB are the control characters that direct DSCHLP to take certain actions: Symbol Value FULl 0600 Switch to full size characters Meaning CRl 4300 End of a line; go to next line ENDWDl 7700 End of help frame; exit CHGHC 3600 Reset horizontal coordinate The LINC data field is set to 2, where the GRID table is located. DSCHLP first sets up pointers to the tables and falls through to LNNXT. LNNXT puts the next vertical coordiaate in VCOORD, the next horizontal coordinate in BETAl^ and then checks the first character of the line to determine full or half size characters. The link bit is set to for full size characters 0 for half size characters and to After setting character size, LNNXT goes to CHRNXT CHRNXT loads a character from HLPTAB and checks for the control characters, CRl, ENDWDl, and CHGHC. CRl causes a jump to LNNXT, ENDWDl effects an exit, and CHGHC causes the next value in HCTAB to be placed in BETAl. If CHRNXT finds no control characters it calls DSCCHR routine to DSC the character whose DIAL code is in the AC. 1 . , A-12 DSCCHR Routine A. 6. 2 DSCCHR finds an address in GRDTAB relative to the contents of the AC and stores the address in GRDPTR (BETA14). VCOORD is loaded into the AC and the character is displayed. To make a horizontal gap between characters so they won*t look pressed together on the scope, 2 or 4 is added to BETAl. DSCCHR checks the link bit which indicates character size. A gap of 2 is for half size and 4 is for full size Data Buffer Display A. 6. 3 The Data Buffer Display is controlled by two knobs, order bits of knob determines cursor position; 0 and 4. The high bits will cover 512 points. The A/D value 7400 is converted to -1, and the value 377 is converted to -1000. The converted value is called the cursor count and is stored in location CURCNT. Every time a point is displayed, CURCNT is IS Zed. When CURCNT goes to zero, 9 4 9 the cursor is displayed. The high order 6 bits of knob 0 is added to the initial scope address to find the address of the first point (leftmost scope point) to be displayed. Suppose the knob value is 10 and the initial scope address is 2000. The display routines display the data from 2010 to 3010 the first time they are called; the second time the display is called, locations 2020 to 3020 are displayed, and so on. Varying the initial scope address in the manner described above lends the appearance of motion to the display routines. Positive knob values move the display from right to left; negative values, from left to right. When the Data Buffer Display is called, knob 4 is put into CURCNT, XCORD (loc 2017) is set -1000, and knob 0 is put into the AC. Next the FREEZE location is checked. If the display is frozen, the display routine (GODIS) is called immediately. If the display is not frozen, the routine SETMOT is call.ed to determine the initial scope address relative to knob 0. SETMOT - The locations BUFHI,BUFLO hold the initial 15 bit scope address that was used for the last call to the Data Buffer Display. The function of SETMOT is to update this address for each call. The routine further A. 6. 3.1 must be capable of making the initial and terminal points of the buffer contiguous. Suppose knob 0 has a value of 20 and BUFHI,BUFLO = 0001,7770 (8K of Adding 20 to this address extends 10 locations beyond the size of the data buffer, i.e., 0002,0010. There is no field 2 on an 8K PDP-12. This effect is called high end wrap around. For this case, SETMOT sets the initial address core) . to 10 locations past the initial data buffer address.^ i.e. 0001,7010. Low end wrap around is handled in analogous fashion. When SETMOT exits, the proper address is in BUFHI,BUFLO. Note that all routines which must handle 15 bit A-13 , * addresses treat the high order half as a PDP-8 field* referenced in the following manner: An address at HI,LO is TAD HI CLL RTL RAL TAD CDFO DCA •+! /CORRECT CDF INST /CORRECT ADDR 0 TAD I LO GODIS Routine GODIS displays 512 consecutive data points, beginning with the address BUFHI.BUFLO. BUFHI goes to CURCDF, BUFLO goes to BUFPTR. The A. 6 . 3, 2 routine SETCDF sets the data field relative to CURCDF, The BETA register for display is XCORD (2017) and runs from 7000 to 7777, Note that hardware channel is selectedWhen CURCNT goes to zero CURDIS is called to display the cursor. 1 If BUFPTR goes to zero, a PDP-8 field boundary has been reached and FWDCDF is called to set the next data field. FWDCDF also checks for high end wraparound. BCNTR is set to -1000 when this location goes to zero, GODIS is finished, XYGET is called to display the X,Y coordinates. CURDIS - When CURDIS is called, the cursor Y coordinate is in the AC and it is stored at location YCUR, not only for use by CURDIS but also for subsequent A. 6. 3.3 use by the X,Y coordinate routines. The contents of the data field are put into XCURHI and BUFPTR is put into These two locations are the X coordinate and will be subsequently XCURLO. accessed by the routine XYGET. YCUR is compared to MAXCUR; if YCUR is greater than MAXCUR, -1 is put into TEMPHI and the cursor is displayed below the spectrum. Minus the length or the height of the cursor is in location CURLEN. The cursor is displayed by putting YCUR into the AC, displaying it CURLEN times via a DIS XCORD; prior to each DIS, TEMPHI is added to the AC. A. 6. 3. 4 XYGET Routines - The routines that determine the X,Y decimal coordinates use a table called LIMVL whose format is LIMVLO 0 0 0 BCDO LIMVLK, 0 0 0 BCDK 0 0 /-starting address device 0 (LO ORD) /-starting address device 0 (HI ORD) -sampling frequency device 0 /address of initial X-coordinate device /-S.A. device K (LO ORD) /-S.A. device K (HI ORD) /-sam.freq. device K /addr of X-COORD device K /-first unused core /location A-14 0 The first task of XYGET is to find the data sector that contains the address This is done by adding the X coordinate to the starting addresses in the LIMVL table, always saving the sum for step k~l. if the sum for step k becomes minus, then the X coordinate lies in between the starting addresses used for steps k-1 and step k; and the sum for step k-1 is the address of the X coordinate, relative to the data sector that contains the X coordinate. Suppose that the data sector for device 0 is lOOOg points and the X coordinate is 07500, The starting address for device 0 is 0 7000; for device 1 it is 1 0000. The X coordinate is the 500th point in the data sector for device 0. Subtracting the starting address for device 0 yields a sum of +500 which is saved. Because the result is positive, the process continues for device XCURHI, XCURLO, 1, yielding 07500-10000 = -300, which is negative. The negative result means that the previous sum, step k-1, i.e., 500, is the desired address. If the entire table is scanned without the X coordinate is in undefined data area and the XYGET routines exit. The relative address is then multiplied by the sampling frequency; this result is converted to a six digit BCD number. A routine to deflate by decimal radii is used for the conversion. The BCD number is stored, one digit to a word, at locations BCDVAL-BCDVAL+5 If the sampling frequency is 3, the value a negative result, . to convert to BCD is 1700. as BCDVAL, The decimal value for 1700 is 960, which is stored 0 0 0 11 6 0 /9 /6 /O 960 is a relative decimal value and must be added to the initial X coordinate which is stored from low to high, starting at location BCDK: BCDK, /UNITS /TENS /HUNDREDS /THOUSANDS / 10 THOUSANDS The number at BCDVAL is added as a BCD number to the number at BCDK. To obtain the DIAL code for each digit, add 60 to the sum for each digit. The DIAL codes are stored in the table DCODEX: DCODEX, 3075 4300 0000 0000 0043 /X= /CR lOOK /lOK IK /lOO 10 /UNITS CR A-15 These values will subsequently be displayed by the routine DSCXY. After the table DCODEX has been set up for the X coordinate, the table DCODEY must be set up for the Y coordinate* First, 400 is added to YCUR to put it in the range 0-511(0-777); YCUR is then converted to a BCD value and then to DIAL codes, one digit at a time, and stored in the table DCODEY. A. 6. 3.5 DSCXY Routine DSCXY sets the LDF to 2 to access the grid table; sets half size characters, and sets the X,Y display coordinate for the top left of the scope (0,400). The routine always displays X-, Y= but never displays leading zeroes or the value 0000, The non-numeric characters are separated from the numeric characters by the carriage return code (43). Display of numeric characters is inhibited until the first non-zero digit (DIAL code 60) is - encountered. The characters are displayed by loading their codes into the AC and calling the routine DSCCHR. When DSCXY is finished, the entire scope display is complete. DSCXY exits to SCPRTN. A. 7 SETUP ROUTINES The function of the Setup Routines is to decode QANDA responses and put them into the initialization table which runs from location INISTR to LAST, or to fill the table from a specified block of LINCtape. QANDA and calls to QANDA are in segment 2. The Setup Routines start at location SETUP. For each QANDA setup message, the refresh return contains the instruction JMP CHKSNS: CHKSNS, SETUP , SNS 0 JMP QARFSH PDP thus activating SSWO for all of Setup mode. The Setup Routines first call the routine FRSTR (fresh start) , which clears the data buffer and sets all pointers to their initial values. Message 1 is then displayed. After message comes either the READ message 1 (see above) or message 2. MESS2 Routine MESS2 first calls the routine RESTR (restart a device) whose function is to reset all pointers to their initial values for defining device K. The initial values for device K are preserved throughout the entire definition of device A. 7.1 , K so that if an error is made in input the routine RESTR will be able to reset them. All values go into the table via the index pointer INIPTR. When message 2 the QANDA answer buffer is decoded and put into the initialization table. The first value is the device type. If the device is analog, the value is terminated, A-16 ANAVAL (4000) is put in the table; if the device is encoded, a value from the The next 3 values are the table ENCVAL is put into the initialization table. STARTING POINT, TOTAL POINTS, and SAMPLING FREQUENCY. used to convert the DIAL codes to digits. (ANSPTR) is pointing to a QANDA answer field. BETA14 retrieves one QANDA character. The routine DIGCHK is The routine DIGCHK expects that When DIGCHK is called, it If the QANDA character is 00 ignored and another character is retrieved. (a blank) it is If the QANDA character is QANDA end of question field (74, <) or QANDA end of answer buffer {34,\), DIGCHK exits If the character is decimal (codes 60-71), DIGCHK exits to P+3 with to P4-2 . the numeric value (0-11) in the AC. If the character is not decimal and not either 74 or 34, DIGCHK exits to the error return P+1. All DIGCHK error returns initialize the routine MESS2. To setup the starting point, the routines DIGCHK and DSCL4 are alternately called until the end of question field return. AC and rolls and packs them 4 DSCL4 takes the contents of the bits each call into the double precision After the starting point has been put into the DAC, the routine UPACK is called to take the BCD values out of the DAC and put them into the initialization table. accumulator (DAC) . After STARTING POINT has been set up, TOTAL POINTS is set up. For TOTAL POINTS, the routines DIGCHK and MULIO are alternately called until end of question field. MULIO does a decimal to octal conversion with the DAC and AC. When TOTAL POINTS is in the DAC, the arguments appropriate to TOTAL POINTS are put into the table, e.g., starting address device K, 2*s complement of the starting The error conditions "no points" and "buffer full" are checked address, etc. for at this time. Like TOTAL POINTS, SAMPLING FREQUENCY is retrieved by alternately calling DIGCHK and MULIO. After the sampling frequency is in the DAC, the error condition greater than 10 is checked for. If the sampling frequency is zero, it is set to 1 before being input to the table. definition of the device and message A. 7. 2 Sampling frequency terminates is displayed. 3 MESS3 Routine If the user requests more devices, the error conditions "no more devices and "buffer full" are checked first, then the routine NXSTR (start next device) is called, whose function is to set up all pointers for the definition of the next device; MESS2 is then recalled. If the user requests to start, an I/O preset is executed and the routine GBLK is called, whose function is to translate the defined data area into (-) the number of TBLKS and store it at location BLKCNT. After GBLK, the routine QADUN is called, whose function is to initialize TISA. A- 17 * Associated to the initialization table is the table of addresses INIAD, which tells where all the initial values are to go. Using INIAD, QADUN distributes the initial values throughout TISA. The buffer preset and clock control registers are set at this time. The TTYQUE is initialized; pause mode is entered by setting the mode to A/D and putting the control H character into KBDBUF. The interrupts are turned on and the IDLE routine is called. The function of the IDLE routine is to keep TISA busy, when it is not acquiring data, by calling four routines and exiting. The routines and the order in which they are called are 1. A. 8 SCOPE DISPLAY 2. KEYBRD 3 . CHKSWI 4. MESCHK MEMORY CHECK ROUTINE The routine MEMCHK lies in the data area and is called once only (when TISA is loaded from LINCtape) Its function is to determine the core limits of the PDP-12 on which TISA is running, MEMCHK puts the largest PDP-8 field in location MAXCDF and exits. This routine must be called for TISA to function properly and is the primary reason why the starting address for TISA is 4001 and the restart address is 402 0. , A-18 CORE ALLOCATION — 7777 7 |— — , ) 0700 (6725-6777 UNUSED) TTY MESSAGES SEG LIMVL TABLE MENT TABLE OF DECIMAL RADII TTYQUE GO TABLES INIT TABLE ADDRESSES INIT TABLE VALUES (5701-5777 UNUSED ) i ^ QANDA SUBROUTINE QANDA TEXT FIELDS DIGCHK ALL CALLS TO QANDA (MESSl ETC.) SETUP MODE ROUTINES SEG MENT \ f (3754-3777 UNUSED) / TTy(HLTMS, GOMS, AND NUMPUT) QADUN Ui m GMENT CHKSWI SETUP MODE SUPPORT ROUTINES ARITHMETIC ROUTINES M HELP FRAME AND DATA BUFFER DISPLAY IDLE ROUTINE V f n7fi^ — X/// 1 777 rTMTTCTT'nN UJNUobD; LOAD ROUTINES HALT AND GO ROUTINES KEYBOARD ROUTINES SEG MENT LINCTAPE ROUTINES TTY (MESCHK, QUPUT) o INTERRUPT ROUTINES DATA ACQUISITION 6, 7, 12-17, 111-177 UNUSED A-19 PAGE 0 y Appendix B Flowcharts SAVE AC SAVE LINK RTN JUMP -* RTNJMP -* RTNLDF DF -^RTNLIF IF AC 1 SERVE ^^^^ SAVE AC SAVE LINK 7777 AC c INTOUT RESTORE AC RESTORE LINK DO PMODE RTN DO LMODE RTN TYPE CHAR SET TTY FLG TO NOT BUSY SETUP NXT CHAR SET TTY FLG TO BUSY tNTOUT B-1 ^^^^ ^^^^ CLOCK BtTS (CLSA)-* STATUS ^^^^ TIRTN ^^^^^1^- INPUT K = K+1 GET PARAM LIST FOR DEVICE K DEVICE TYPE -*OVTY P CALL INPUT ROUT — Y SELDVK L-*- HSWITK RESET SAM FREQ SETUP CDF AND ADDR SAM Y AXIS AND STORE N INCREMENT CURRENT ADDR B-2 Y UPDATE OLOSAM C'^ HALT RTN ^ TPWAIT ^^^^ CALL IDLE N TAPE N TAKE NEXT MESSAGE OFF TTY QUE DECREASE QUECNT ADVANCE QUEOUT TYPE 1 CHAR SET TTY FLG TO BUSY B-3 RETRIEVE AND SETUP ARGS DO 1 MTP INST CALL TPWAIT ADD 1001 TO MBLKVTBLK QUPUT 4\TBLK MBUKVTBLK AC -* QSAVE ADD 1 TO LDF INST SLOT LEFT 1 Y STOP TAPE CLR XOB U BITS QSAVE * AC MESS TO TTY QUE ADVANCE OUEIN ADVANCE QUECNT EXIT 1 tOF SAVE m c HAR CLR KBDESUF CLR NO PAUSE SET PTRSTO CHARACTER TABLE DIAL START GET NXT CHAR FROM TABLE CHAR MATCH ? Y LOAD JMP INST FROM TABLE DO JM P INST C COMPLEMENT FREEZE DISPLAY FROZEN FREEZE MESS TO AC MOTION MESS TO AC CALL QUPUT B-5 N PAUSE MODE Y lOF SAVE NUM (K) IN TEMP I C>3 [ 0-^ HSWIT ] ^^l^^^HALT ^^^^ Y 1 r 0-^GSWIT 1 GO 7777 -> HSWIT 0-*GSWIT Y CATPTR -1 TO AC 1 1 7777^GSW!T HSWIT LOADER B-6 Y HLTMS^^^^^ ^^^^ MAQPTR -1 TO AC HALT MESS TO AC ^^^^^^ LOA D E R~^^ CALL QUPUT CALL NUMPUT PAUSE MODE V ? N lOF K=0 ^^^^ > K= K+ 1 j V O^MODE 0- CLOCK ENABLE Y PAUSE MESS TO AC 0-ALL SELECT WORDS CALL QUPUT 1 PAUSE MESS TO AC 1 0 TO MODE 0 TO CLOCK ENAB c CALL OUPUT B-7 IS DEVrCE K HALTED ? Y N OTO SELOVK 1 CALL HLTMS CALL GOMS { 1 SETUP PTRS TO TABLES SETUP INITIAL X AXIS SAM OTO HSWITK GO MS lOF GO MESS TO AC j TRANSFER VALUES FROM TABLE TO DEVICE K PARAM CALL QUPUT LIST 1 CALL NUMPUT 1 SAM XAXIS PUT AT OSDVK ENABLE ALL CLOCK INTERRUPTS NUMPUT A/DME SSTO AC NUM MESS K TO AC CALL QUPUT CALL QUPUT B-8 ^^l^^TPARGS SET DIGCHK FOR OCTAL INPUT SAVE TABLE PTR IN AC 0-*TBLK iOF CLEAR XOB CLEAR ESF READ IN EDITOR GRID TABLE CALL DIGCHK TRANSFER AC TABLE TO DIAL E6 TABLE READ IN DIAL LOADER C""*'diail LOADER ROLL AND PACK 1 DIG IT IN TBLK CALL DIGCHK ^^^^ DOWRC^^^^^ CALL TPARGS WRIT ^^^^ Y ^ tlMPUT ERROR LO ORDER U BIT TO UNIT SETUP ARCS FOR DOMTP ROR 3 TBLK CALL DOMTP ADV RTN TO P+2 SET DIGCHK FOR DECIMAL INPUT ^^^^^^ B^9 EXJT^^^^ WRIT IC>F TRANSLATE BLKCNT TO DIAL CODES AND C PUT IN OANDA WRITE MESS SET PTRS TO DISPLAY OANDA ANSWER AND LOAD TABLE NAME MESS N REFRESH MESSAGE LOAD NEXT OANDA CHAR Y DISPLAY WRITE MESS CHANGE TO 77 OANDA DONE REFRESH 7 Y SET PTR TO OANDA ANSWER BUFFER C STORE CHAR IN LOAD TABLE GET UNIT NUM c 3 LOD PTR .1 TO AC LOADER B-10 DORDC^^^^^^^^ ^^^^ CALL TPARGS INPUT READ ERROR N READ IN REQ, TBLK I/O PRESET SET NO PAUSE | IDLE SETUP IN IT TABLE DISPLAY DSCHLP HELP FRAME ILLEGAL ? TBLK ? 1 N KNOB 4 TO CURCNT CALL FRSTR -1000TOXCORD ~ NUM OF DEVICES TO AC STRRDE CALL GODiS 1 CALLCHKSWI CALL MESCHK B-ll I SET PTRS TO TABLES GODIS SET VCOC)RD, BETA! FO R NXTLN SET INITIAL LOAD 1ST CHAR OF ALN SCOPE ADDR AND CDF SET COUNTER FOR 512PNTS N SET HALF SIZE 1 SET FU Lt SIZE 1 OTO LINK LOAD THE NEXT DATA POINT 1TOL INK RELOAD 1ST CHAR B-12 AND SCR 1 SUB KNOBO ADD KNOB 0 TO BUFHI, BUFLO FR0A4 8UFL0 Ht END GODIS FLOW WRAP ? Y •I^BUFHI TO BUFHI MINCDF - BUFHI MINADR + BUFLO BUFLO BUFHt ATMIN VAtUE GODIS ? FWDCDF Y •MINADR+ BUFLO TO BUFLO 1 AOD1TOCURCDF | 1 MAXCOF TO BUFHI | MINADR -^ BUFPTR MINCDF-^CURCDF CURCDF TO DATA FIELD B-13 ^[^^^^DSC CHR SET GRrO TABLE ADDR RELATIVE TO AC VCOORDTO AC CURDIS DSC 1 CHAR AC TO YCUR j 1 LINK 0 ? ADD 2 TO DATA FIELD TO XCURHI ADD 4 TO BETA1 BETA 1 BUFPTR TO XCURLO ITOTEMPHI 1 1 FOUND DIS Vs. 1 1 CURSOR BELOW ^ ^V^SPECTRA ^X"^ MULT DIFF BY SAM FREQ Y CONVERT RESULT TO •ITOTEMPHI BCD BY RADIX DEFLATION 1 ADD BCD RESULT TO INITIAL X COORD YCUR TO AC CONVERT SUM TO DIAL CODES STORE ATDCODEX ADO TEMPHI TO AC | 400 + YCUR TO YCUR DIS 1 POINT I CONVERT YCUR TO BCD I 1 CONVERT BCD RESULT TO DIAL CODES STORE AT OCODEY N 30 POINTS ? \ B-m B-15 CHKSWI IN IT PTR S FOR DEVICE K ^^^^ READ ^^^^ AODR LO ADDR HI TABLE -S,ADOR LO~l INIT S. S. DSC READ MESS S. AODR HI J*' TABLE CALL CHKSNS ^ DSCM ESS 2 CALL CHK SNS | Y SET PTR TO QANDA ANSWER ANALOG SELECT TO AC ^^^FRSTR ZERO OUT DATA BUFFER IN1T ALL SETUP PTRS FOR DEVICE 0 DSC ENC ERR ENCODER SELECT TO AC EXIT CALL CHKSNS AC TO TABLE OA DONE B-.17 UP OEV COUNT ^^^^^ A2L0P ME^2 ^^^^ ^^^^ 1 AC-*TEMPLO 1 PACK BCD VAL IN AC IN OAC 1 TRANSFER STARTING POINT FROM DAC TO 2»DAC-*DAC SAVE 2«DAC TABLE 4*DAC-»0AC YIELDS 8"DAC CALL DIGCHK 8*DAC + 2«DAC TO DAC INPUT ERROR DAC + TEIMPLO TO OAC CALL MUL10 B-.18 1 B-19 B-20 B-21 DIGCHK LOAD NEXT QANDA CHAR Y BLANK ^S»^ END OF QA FIELD j AC TO TABLE rs IT A DECIMAL DIGIT TRANSFER INIT TABLE VALUES TO TISA ROUTS AND TABLES Y DIGIT TO AC START CLOCK INIT TTYQUE SET TISA TO A/O MODE 7777 - MODE 210{CTRLH)-* KBDBUF ION CALL IDLE B-22 0000 0001 0002 0003 0004 0005 0006 0007 0010 0011 0012 0013 0014 0015 0016 0017 0020 0021 0022 0023 0024 0025 0026 0027 0030 0031 0032 0033 0034 0035 0036 0037 0040 0041 0042 0043 0044 0045 0046 0047 0050 0051 0052 0053 0054 0055 0056 0057 0060 0061 0062 0063 0064 0065 0066 0067 0070 0071 0072 0073 0074 0075 «20 /TISA (TIME INDEPENDENT /SPECTRUM ACQU IS IT ION) /MULTIPLE DEVICES INTERRUPT DRIVEN /MOVING k^INOOW DISPLAY /CURSOR AND X-Y DECIMAL R U M U U V /USES QANDA FOR SET UP /SUPP0RTS UP TO 32K OF PMOOE *1 SPAT Cm JMP I /p Monr 1 1 / 0001 0002 0003 0004 0005 5402 0230 0000 0000 0000 BETAl BETA2# 8£TA3# 0010 0011 0000 0000 *10 INIPTR* 0 ADPTR# 0 0020 0000 ADMESS ! 1 I NTP /RFTA^ /ouiMw rnR run /ROUTS 0 0 nAH kaUMu I 0 /PTRS rOR TAR! T /STTliP <^20 t 0 /rnR TYPr nuT /R ntJ T T NTQ 0021 0000 KBD8UF# /HOLDS LAST 0 ' 0022 0000 TTYFLGi nc: /T TV f 0023 0000 QUEIN» wnMn DUMr\u r\L.i / HHl 0 ACT 1 CHAR ^ VJ ir sNyINC 0 /FOR IN COMING /MFSSACFS /PTR rOR i<> rW'^ OUT WW' /GOING MFSS /HOLDS NUMBFR /OF UNTYPFD /MESSAGES IN 0024 0000 QUEOUTi 0 0025 0000 QUECNTi 0 0026 0000 STATUS* 0 /H OL nS 0 /BITS FROM CL SA / Tri ^ wurTur /TTY our 0027 0000 OVTYP, CI OCK 1 /4Ci0(7is AW Ai nri /0xyyrrwrnnrn lUoAA-'t.lilV/WWt.U / 0030 0600 KINPUT# /PTR INPUT Tfl TWPIJT /R OUT f wy r\ 0031 0032 0033 0034 0035 6201 0000 0000 7000 0000 CDF0 CDF 0 MAXCDF 0 M "wwr MINCDF, CDFMIN MINADR» AORMIN YCUR, 0 0036 0000 DEVNUM, 0 0037 2330 KOADDi DADO 0041 0042 0043 0044 0002 5443 0200 0000 1 f 1 » f /BUFFFR RnUNDS /Y COORD /•NUM OF DV /AT RUN TIME /CALL TO DBL /PREC ADD /L MODE »41 2 JMP INTL DBLLO, 0 I ,*1 /INTERRUPT /DISPATCH /DBL PREC 00 76 \l) ±\u)0 01 04 0105 010 6 01 07 01 10 nBi NTs A pr n A DP U 1 0000 00 45 tJvJff \O}0 'i f 0050 0051 0052 0053 0054 0000 TP MP n Tr MP M . 0 sC . 0 ! 00 !W U 00 iW T 000 0 VJ U IN 00 sy 00 Ky PPM n Dw T D J . 0 0 0000» DW r r n » (A IC aJ )U gj iw iv If fx > I IN 1 f A t» f /y M 0 IC 0 i so /DBL PREC /ARG /ALSO s /XCURLOi XCURHI /CURSOR X COORD /rOK MOVING C11 1 ft/i. 1 J. X 0055 f* X 0113 0114 X K/ <*» ' %J ftJ V \Cj MP TP T 1 /W aNDO W yOTD Trt /PTK TO /r UK on /PTR TO /FOR SR /PTR TO 0 sc . jy iw « 0 >w ly 0 !C 00 >w Dp HP T P 0116 0117 )U VJ f 0000 D A HP T R 0 W6 WX 7 773 M Ay nwKi aU nA V IM # n MA A Y VM INn A U V/ 62 U £> 0?5 jC w 77 / / PS 0063 WW 4 4^6 kn r\ U T V9 1 1 f: W" 3 IC sJ 000 SC ^ il 10 n UL rV M X IC f rl MAS 9MoW c r/i K 1 uL t p IDLE f5i StU LJV0 SEtuVl SELO V2 SELD V3 MlJL 21X X>' <<• IC X cL c* K/ X C> W iC jy iC K/ IC CI K,/ Kj' 10 10 X 25 C 0126 0127 C 0130 0131 X X 0132 0133 0134 id' O U L IN # 77 C?! f %/ JL jCf n T r pu K 'J XOO IC' X o/ Midi wX i *T (71 JC/ fTi ^71 A^ fJi fTt f7l*3l A 0 7/ \o\o\o\c} |y 10 01 ly X *f 0 it; X *? T 7 fTi X "u 0147 0150 0151 0152 0153 0154 fA rn CA m 0000 M W000 MM !c k>0 0 W71 r/ (A 7 V M 7 "< 7 77 7 fill 74 1111 I f ^71 fTl iy 1 UuX icl CA(A /91 fji r?( { 1 0075 0076 0077 nil nil 01 IC K/ IC X 00 00 )C iC o o 3 461 0101 liii f t 1 1 0 0 f ^ 1^ kill n #* h J 0 0 # 0 u Hoc LIW If Tf 0 f CU T T1 U now 1 1 1-1 nil 77 77 X > W ! T2 . ^ W ! T3 . 77 77 tiff 1111 f f / f 1111 n o W i *r 1 cr p T P 1 c oLr i XMi TM^ • UUn \/V0 <7{ t nU no 1 WX 0156 0157 0160 0161 0162 0163 0164 0165 0166 0167 0170 0171 0172 0173 0174 ^ "H* /- *"NUM OF DEV /'ISA WILL /o gpp OR /GOES TO CLtN /INT ON OVF /CHAN Ii2i3 /CALL TO SR TO /CHK QANDA ANS /BUFER FOR /NUMER C INPUT /CALL TO DECMAL /TO OCT CVERT /CALL TO IDLE /LOOP /DEVICE SELECT /WORDS 1 If JU XW^ !£/ AT UL k7 0124 1/11 K.' API/*'*? ARGS BCD VAL XYGET rWRS OF /10 FOR OCTAL /TO DECIMAL SR X X -> k3 01 sp 0102 0103 W X/ X 3b07 0104 0105 0000 K/ i<r hM^ u un o # nuu 10 TTMP 0 . rv c. f IC )C IC iC . nUDM UUrU T .^"^ 10 X IC ij w 601 y >c X S P nM blj noQ r cT M TI 0 Q wl 1 N TH 010 6 0107 6143 i<Dj 01 X K/ IC X 10 &1 44 T\U Mo 0111 0000 AAAP0, 0 0200 3352 INTL, «200 OCA ASAVE T r\ i IN i rs # i . DUK r\ w T 9 1 Pi i^PKiT 0T uAACT 1 1 # /CAL SR TO PUT /HALT MESS IN /TTY QUE /CALL GO MESS /MODE WORD 0» /PAUSE 7777«A\0 /CALL SR TO PUT /A MESS IN QUE /TOP INIT TABLE /PTR TO ®NUM OF /TBLKS IN BUF /ENTRY OF INIT / T AdLL /IST UNUSED PC /0 CORE LOG /L MODE INTRUPT 017b 0176 0177 0200 0201 0202 0203 0204 0201 0202 0203 0204 0205 0206 0207 7010 3351 1040 0355 1354 3274 6141 020t? 0210 0211 0212 0213 0214 0500 6234 1060 0000 0242 0215 0002 0206 0207 0210 0211 0212 0213 0214 021^? 0216 0217 0220 0221 0222 0223 0224 0225 0226 0227 0230 0231 0232 0233 0234 0235 0236 0237 0240 0241 0242 0243 0244 0245 0246 0247 0250 0251 0252 0253 0254 0255 0256 0257 0260 0261 0262 0263 0264 0265 0266 0267 02 70 0271 0272 0273 RAR OCA LSAVE TAD 40 AND P1777 TAD P6000 OCA RTNJMP LINC LMODE 108 6234 STA ROL /POSITION LOF /BITS 2 POP PMODE AND P37 TAD ANLDF OCA RTNLOF 0350 1347 3271 1213 7012 7010 0350 1346 3270 5234 3352 7010 3351 7040 0234 0235 0236 0237 3345 6131 7410 5275 SERVE, 0240 0241 0242 0243 0244 0245 0246 0247 0250 0251 0252 0253 0254 7300 6031 5245 6036 3021 6041 5256 6042 TIRTN. 5255 6046 2020 0255 3022 0256 0257 0260 0261 0262 0263 0264 0265 0266 0267 1351 7004 1352 2345 5266 6244 6001 5400 6141 0006 1420 /SET UP LDF LIF /FOR INTERRUPT /RTN /RIB /SAVE IB 0 0216 0217 0220 0221 0222 0223 0224 0225 0226 0227 0230 0231 0232 0233 7 45 0 I /MAKE LINC JMP INTP. TAD RTR RAR AND TAD OCA JMP OCA RAR OCA CMA .-6 /POSITION LIF /BITS P37 ANLIF RTNLIF SERVE ASAVE LSAVE OCA INTMOO CLSK SKP JMP TISA CLA CLL KSF JMP CNKTTY KR8 OCA K80BUF CHKTTY, TSF JMP INTOUT TCP TAD I ADMESS SNA JMP .3 TLS ISZ ADMESS DCA TTYFLG INTOUTi /SERVICE INTRUP INTRUP /P MODE TAD LSAVE RAL TAD ASAVE ISl INTMOO JMP OUTL RMF /7777 FOR PMODE /0000 FOR LMODE /INTERRUPT /CLOCK ? /YES SERVICE /DEVICES /KEYBOARD /YES GET CHAR /TTY ? /NO EXIT /CLR FLAG /NXT CHAR /MORE TO TYPE /NO OUTL* 6 ? /SET PTR FOR /NEXT CHAR /SET TTY FLAG /0 MEANS TTY /NOT BUSY /RTN FROM /I NTERRUPT /P OR L MODE /L MODE ION JMP I LINC ? 0 /DJR ? "7 r/ 027 4 0275 0276 0277 0300 0301 0302 0303 0304 <^ 03 05 03 00 02 /5 0307 0310 0311 0312 0313 0314 0315 0316 0317 0320 0321 0322 0323 0324 0325 m o "7 "f 02/7 !7: (A (2 02 71 tA ra CA f% 0272 O7 02/3 r? K, fTi fii H NL 1 r ? RTNuDF ? 1 iO jr oi ri "X /7» i M /a fi< HTN JMPO D T Kt 1 p / 1 Do UN 0 /DATA / ACQU I Q T i ON /SERVICE /UtV CES 1 1 01 05 ^ O "7 f?i CLSA T 1 5) A • /o A V t A T C uC A Cb T ATUb o^ ! J I r« "? f7! i i fii Q^ /Ti K^Kf 01 A 00A / 50 TAP ANU en n 01 SNA JMP DVl OCA DVT Y P JMS I KINPUT VI 030 2 0303 0304 5321 3027 0305 0306 0307 0110 0114 0000 0310 (A Ch rSt fA 01(300 c n V0 Uu KoF 0311 0000 H I D V0 * 0 n n w 01 0 Oo uV 0 0 >i ii 7 4 30 r2i 100 X AaDV0 100 YAXUV0 o v0 oFD f" r% \i ni IV f?" 0 > J9I » 0 0 32 6 0327 0330 16/ 3o1 3 i.c 01 (VI n 1 o 0332 0333 0334 7 m 0335 0336 0337 ra "7 '7 031o "/ c: n 0000 0000 5321 m m n ni 03 44 0317 3066 0345 0346 •» Q fa m 0320 TE 01 "7 TT TP T? "7 0 34 0 nk <A fA ELODV0I tHlDV0> 0 0 JMP DVl 0341 03 42 0343 03cl ni T f% sy3 51 rt "7 nQ MHO"? iCiO 23 1 ni O k)k3 0/ n \i n "7 il C ^0< 0i (A k3 ^ 0 OO 1 "2 O 00 0 W 0111 0115 M 0000 i LI 7 4 50 0327 c n m DCA oELDV0 1/ C f V DCA IJ T0 H5WI TAD STATUS AND S tLDVl SNA JMP KDV2 DCA QVT T r UVli 0357 0354 0355 1* r\ If 4 K 5/53 03 53 Lit 3073 032 4 0325 032 6 035 2 iz "7 Al I 3027 4 430 wno -1 (A It "< i 0 331 f3i <^ ffl 100 XAXDVl 100 YAXDVl SFD V 1 (71 c E" n \/ KSF 0 VI "4 0 HI DVl# 0 ly ^7 / Kt AD T ^ yi C WOO!? 01 -z i /DEVICE 0 /X AXIS SAM /Y AXIS SAM /SAM /pREQ (VAR? /SAM /FREQ CFIXtD) /15 BIT BUFFER /ADDR BVoBll /OF HI ORD yfC nATA DATA Fin /IS FLD Anno /X2 rjTT BIT ADDH /WITHIN DATA /FIELD /OLD AVfC Cam A A 1 0 5 AM /LAST /DATA ADDR /HERE TO /CALL DVl /HERE TO HLT /DEV ICE 0 /0 DESELECTS /A DEV ICE ycpT uAiT /otT SWIT HALT euifT /SELECT WD DVl /READY ? /NO GO TO DV2 /SAVE TYPE /CALL INPUT /PARAM LIST fit j7< 0334 0000 LOOVl, 0 1 /X AXIS SAM / Y AXIS SAM /SAM /FREQ (VARJ /SAM /FREQ CFIXED5 /15 BIT BUFFER / A UU n 0367 0370 0371 0372 f /NO GO TO DVl /SAVE TYPE yr*Ai fMDiif INPUT /CALL /PARAM LIST /DEVICE )0000 ra WD UVw /'^R.UC.UT /X 0314 0315 0310 rtl /uLvCK DjTS /CHK Dy0 ®D A J. /OF HI ORO /IS DATA FLD /12 BIT ADDR /WITHIN DATA 0573 0374 0375 0376 0377 0400 0401 0402 0403 0404 0405 0406 0407 0410 0411 0412 0413 0414 0415 0416 0417 0420 0421 0422 0423 0424 0425 0426 0427 0430 0431 0432 0433 0434 0435 0436 0437 0440 0441 0442 0443 0444 0445 0446 0447 0450 0451 0452 0453 0454 0455 0456 0457 0460 0461 0462 0463 0464 0465 0466 0467 0470 0471 /F| ELD 0335 0000 OSDVl, /OLD 0 /X AXIS SAM 0336 0337 0340 0000 0000 5753 ELODVl, EHIDVl, 0341 3067 HLTDVl, DCA SELDVl 0342 0343 0344 0345 0346 0347 0350 0351 0352 0353 0354 0355 7 001 3074 5753 0000 0600 0640 0037 0000 0000 0400 6000 1777 0400 0401 0402 0403 0404 0405 1026 0070 7450 5223 3027 4430 0406 0407 0410 0112 0116 0000 SFDV2, 0 0411 0000 KSFDV2 0 0412 0000 HI0V2, 0 0413 0000 L00V2# 0 0 0 JMP I I KDV2 AC DCA HSWI Tl JMP I KDV2 INTMOD# ANLIF* ANLDFi P37, LSAVEt ASAVE K0V2 P6000. P1777, # , DV2# /LAST /DATA ADDR /HERE TO /CALL DV2 /HERE TO HLT /DEVICE 1 /0 DESELECTS /A DEVICE /SET HALT SWIT /MXT nr VI CF 0 600 640 37 0 0 DV2 6000 1777 «400 TAD STATUS AND SELDV2 SNA JMP DV3 DCA DVTYP JMS I KINPUT 100 XAXPV2 100 YAXDV2 /CHK n V2 /SELECT WD DV2 /READY ? /NO GO TO 0V3 /SAVE TYPE /CALL INPUT /PARAM LIST /DEVICE 2 /X AXIS SAM /Y AXIS SAM /SAN /FREQ (VAR) /SAM /FREQ (FIXED) /15 BIT BUFFER /ADDR B9*B11 /OF HI ORD /IS DATA FLD /12 B T ADDR I /W f TM I N n ATA /F I Ei D 0414 0000 0SDV2, 0415 0416 0417 0000 0000 5223 EL00V2i 0 EHIDV2, 0 JMP 0V3 0420 3070 HLTDV2* DCA SEL0V2 0421 0422 0423 0424 0425 0426 0427 0430 7105 3075 1026 0071 7450 5246 3027 4430 CLL DCA TAD AND DV3, 0 lAC RAL HSWI T2 STATUS SEL0V3 SNA JMP 0V4 OCA DVTYP JHS I KINPUT /OLD ' Www /X AXIS SAM /LAST /DaTA ADDR /HERE TO /CALL DV3 /HERE TO HLT /DEVICE 2 /0 DESELECTS /A DEVICE /SET HALT SWIT /SELECT WD DV3 /READY ? /NO GO TO DEV4 /SAVE TYPE /CALL INPUT n A f '1 0473 04 74 CA A 7 Si 04 31 4 0^ fey Sfl*i c c n \/ or U V 0 1 'Tt \0\0\li\c) ffl >1 "2 X AX UV3 V A V Pi V/ *J (54 cp K5FDV3 ri li *? ty 05 00 ni 100 1 1 / f?l fTi fTl (TS /o 05 02 0113 k3 /Or y04 Di c: Si 1 'Z k3v 1 O 0*»oo 01p 00 04o / ffl .A ,A ) n n VI "z 0 uSuVo# ^ n \i CI A A 0000 ^AO K ?O 4A cA 0 0443 3071 0444 7125 O076 10^6 0 c* "x 0 un JMr DV4 t fJ( 0!?<i 0 0522 0523 0524 r» c: r> c 04 47 0 lo44 0 4 *T / yODc / f/ /I K, (9< !? t/ \00oV} 0->ol W 4 P4 K "JT '3 HLTDVo OCA SEL0V3 STL lAC RAL OCA H5WIT3 TAD STATUS ANU 0 tUuV4 •» fX (71(7! 1(9 4 AR1 k3 4 P i f3 •7 /I "T O c r» CM A RA70 1 07 JMP DC A rV T V tX I T WTV Q T r DVT k34 -DO 44 00 JMS I 0454 0120 0l£4 100 XAXDV4 100 W4 P 0 r>i f/l ? I KI NPUT t35o 0 nGi. A 0!?o4 m 0535c 7 u ni /Ti SF0V4 \d J /I k3 4D / fyi iTi i'^ c n V4 KSFu p* in \/ >t J WD *4<C 0543 W4 0 16 HIDV4, 0 1^ n LuDV4 0 k35 0546 fj* K /t ? 40ik 1 W^ n< <i f>t (71 17( So 1000 1 li yi 05 50 0551 Him 40c R OouV * 1 0 X A 400 4 40A il4 AS W4 0-? fH £>. '<> ICI \0Z>OZ> ni i*% pr i CUT wi DV4 tn I n # fil Ic) R A TO 0 0 JMP I cC D 7/ EXIT (7 k3 I? \ODOX K^O A 04 A00 fTt >l 10 -? ru HQf 0566 0567 0570 0470 0471 0472 0473 o 05fe5 /DATA ADDR /HERE TQ /CALL uV4 /HERE TO HLT /DEVICE 3 /0 DESELECTS /A DEVICE /SET HALT SWIT /SELECT WD UV4 /Ht ADY 1 /NO EXIT /SAVE TYPE /CALL INPUT /PARAM LIST /DEVICE mUT^ fa 0R /L AS T w LHu ?I nDVo Kyi / CO HI DATA FtU /12 8IT AOOR /WITHIN DATA /FIELD /OLD /X AXIS SAM /I?a fJi iTI J /FREQ CFIXtU) /Ip BIT BUFFER /AUOH HV^Bll 0 K ni "7 0b06 0507 0510 0511 0512 f /Cam 0 K /PARAM LIST /DEVICE 3 ft AXIS SAN /f AAlb SAn /©An REQ V AR "1 (51 70 3077 5672 0240 6002 OCA SELDV4 CLL lAC RTL OCA HSWI T4 JHP EXIT TIRTN /SAM /FREQ lyAR) /SAM /FREQ CFIXED) /15 BIT BUFFER /ADDR pywBll /QF HI ORD /IS DATA FLO /12 BIT ADDR /NITHIN DATA /FIELD /OLD yv avtc oam /X AXIS SAn /uAST /DATA ADDR /HERE TO /EXIT /HERE TO HLT /DEVICE 4 /0 DESELECTS /A DEVICE yCPT UAI oW IT /SET HALTT CJJTT I EXIT, lOF 4 /X AXIS SAM /Y AXIS SAM /O KEY 0571 /START 0474 ~i 6141 0475 ly *' iw 0001X 0602 w c A A y n M (J 0476 ly ITT 2 47 7 601 W J. 5 IMP n ? A Mr f 1 JU n T A 1 05 72 0^73 0574 w / (?) ly ft' 1 /P nwwt 7A n T f iw iy ,</ *j \j tj %i 06 01 06 02 06 03 0604 0 60 5 0606 0607 0610 0 ^ 4. W 611 I?16 1 ^ P iu w 4, 0B01 iw 05 02 sy -i* «£» 0503 0504 0505 0^0 6 050 7 jiy iw / 0^i5 1 0 17 40 P• 7040 f if "f 37 4 0 17 40 7640 PM A w M nr A T KP ni A T A n T K P Hi A R M W ^ . *3 vJ 4. 531 ly 0 Vrf j J, 1343 7 410 ~i 1^44 MP lU c. 571 r IMC T IMP T lAU i . 1 IP 1 IT I A oo ^W /pTM 70ly 40iy rM A 0616 w Xw 0516 37*^7 nrA T kPRrn TAR KTRrn ? A ri OCA UL AA iv IC -JL iy JL X c- J, sy f *T 86 17 05 1 K/ J. 7 17 37 0620 c 0520 ^C 7640 w 06 21 05 21 W £. C 0 5 22 0623 0624 0625 0626 062 7 0630 0523 0524 0525 0526 CW 0527 053 0 53 24 13 41X Jt w 741 0 13 42 53 1 iC/ V/ iv r jy iw / 06 31 05 31 531 wi2 C 60 02 w jy 0632 0633 0634 0635 0 636 VWW 063 7 0640 w^ 0641 0642 0643 0644 0645 0646 0647 0532 0533 tj ,j 57 4A 4 "T 0535 0536 ^wu 05 41 C. ^ W V wu Xw 0542 0543 0544 0545 054 6 6624 6635 6646 4023 4400 0600 0000 ly "t If r Kt tct WO /Id QP r or w TP K MM Un 4 O Lr 1 / r p n 3t r M nU / iMU o UN 1 1 /MPCQ Tn niir iMP KTYRTM TAn wnnr OCA UL A O1 VMrQQ Tn niir J MP / 0 // K\n IM U TAD Mnnr OCA U U A IMP IMP f% 1 cc K^r TUP T nuDt i r r c VU 0 b MAP r HA yA U ki ? 4 T LO //y nr iMP T r\ r l\ C. T / r Allot ?y T T fc. AL L 1 / cr T IIP PHI lT<s /u L< rY rs L T PAiiQr nUUt Mrtnr 0f /rAU^ic. /Mn T r M no c /NO IGIMUKL yW y V r c r« A / W 3 T f l/'LiD T T T 1 y 2040 c tj LT r\ t J, (C \j f 0537 ^ 0540 f\ l^Un r Av»t TAHw rPM<* r no t WK I T t KOUT 0 r r3r r D nr t. L C t. cu # r U U A rt M nQ OM nn U T MQrp MnTM9 ! FRMS IN 1 n W # QM M Ho r\ iM 0 uP "1 0 A V OC Vr «>i KSPTUP w wr iN Ct 1 KWR ! T * INPUT r W 4 1 1 < WR T T ^A KJ IM 0 Q0 0 63 0 0651 06b2 065 3 065 4 0655 0656 0657 06 60 * 3 MflTMQ c. fc/ ly 0 ^ jy 5 iM P T A n QK p 7640 5745 1103 7640 5312 w / r / T *^ 1 J* ly w J. 103 rSrKLU <^ "T ly K/ ly cpr r TDUM OrLviKUn y T e 1 4505 KT YR TM ?y C A 1T T # 0511 0512 ^^ ^ M A-1 OX 4" yn QPrfTDliM Tft nnr 'TtP ilNVfc.ni /MTQQ n t5> 0 Tn / U niir U vC. TWVM*? i iN V n o } 0S ^ »y i/ 1 5 4». n TP r\ "1 v> 111 Q 4> w rV A p T T V 1 NORMS w « U 1 7"^7 s> /pn / TAfl Hw Si<P TAfl MU ly ' kPni AP i / Ut T i Nr UT r HQn /nr w rr w /UtVibt / flCT paramttcp /L oT r HUM U ALU 0 T l\ i u >y ju 06 02 X w kl^ iy TaH fkiDtiT ? yv AXio avtc oAfI cam /A 066 2 06 07 33 3 \j w 0 O 22 c £- 00 ty sy 16 00 ly jy 32 54 2 200 12 00 0663 0664 0665 0666 0667 0610 3335 TAnU NrD n UT TRTQ DCA r WV tW 0611 0612 2200 1200 TAD 0603 0604 0 60 5 06 61 IC^ «!•'«' UwA OApIa T i I C O3 C AU A i MP rM wT N i A IN r T f T K{ i I J. *s IS2 w ! OAnT r\ INPUT INPUT D rT /y p 1 K Tn U 1 N n TRTQ /LAST COUNT /(VAR) /S A MP 1 ! /PTR TO 0670 0671 0672 0673 0674 0675 0676 0677 0700 0701 0702 0703 0704 0705 0706 0707 0710 0711 0712 0713 0714 0715 0716 0717 0720 0721 0722 0723 0724 0725 0726 0727 0730 0731 0732 0733 0734 0735 0736 0737 0740 0741 0742 0743 0744 0745 0746 0747 0750 0751 0752 0753 0754 0755 0756 0757 0760 0761 ^ i be 0764 0765 0766 0613 3334 DC A KFREQ 0614 0615 0616 0617 0620 0621 0622 0623 0624 0625 0626 0627 0630 0631 0632 0633 2200 1200 3331 2200 IS2 TAD DCA ISE TAD DCA ISi TAD DCA 0634 0635 0636 0637 1027 7710 2735 0640 5600 JMP 0641 0642 0643 0644 0645 0646 0647 0650 0651 0652 0653 0654 0655 0656 1734 3735 3336 1731 7104 7006 1031 3252 0000 6141 0000 0002 3736 TAD KFREQ DCA I FREQ TAD ADDR OCA HOLD TAD I COFVAL CLL RAL RTL TAD CDr0 OCA 0657 0660 6201 1332 CDF 0 TAD ENOLO 0661 0662 0663 0664 0665 1730 7640 5273 7004 1333 TAD I ADDR S2A CLA JMP NFOVK RAl TAD ENDHI 0666 0667 1731 7640 5273 2200 5600 7101 1730 3/30 7004 1731 3731 5600 TAD 1 S ^A CLA 067 0 0671 0672 0673 0674 ^ 1 0676 0677 0700 0701 nm 3330 2200 1200 3327 2200 1600 3332 2200 1600 3333 2200 J S2 TAD DCA I S£ TAD DCA ISZ 5 3 02 ANARTNi INPUT INPUT COFVAL INPUT INPUT ADDR INPUT INPUT OLDSAM INPUT INPUT ENDtO INPUT INPUT ENDHI INPUT I /PTR TO OLOSAM /PTR TO LAST /DATA ADDR 1 TAD DVTYP SPA CLA JHP ANALOG FREQ ISl I I INPUT I 173 0 /SAN FREQ /CFIXED) /PTR TO /BUFFER /CDF BITS /PTR TO /BUFFER /ADDR /FIRST RTN IS /JHP TO DV K^l /2ND IS HLT DVK /ANALOG /OR ENCODED ? /READY TO SAH /Y AXIS ? /NO GO TO /OV K^l /RESET FREQ /FOR NXT PASS I /BUFFER ADDR /SETUP COF /CDF 0 N LINC SAMY, 0 2 DCA I HOLD CDFVAL JHP NFDVK IS2 INPUT JHP INPUT CLL lAC TAD ADDR DCA I ADDR RAL TAD I CDFVAL DCA COFVAL JMP I INPUT /SAM Y AXIS /POP /PUT IN DATA /BUFFER /RESTORE FLD 0 /DVK IS FIN! /HHEN CURRENT /ADOR /CCDFVALiADDR) /^TERMINAL ADDR /CENOHI /ENDLO) /FINI OV K I NFOVKi 1 /ADV CURRENT /ADDR 1 /NORMAL RTN 0770 0771 0772 0773 0774 0775 0776 ^111 1000 1001 1002 1003 1004 1005 1006 1007 1010 1011 1012 1013 1014 101i> 1016 1017 1020 1021 1022 1023 1024 1025 1026 1027 1030 1031 1032 1033 1034 1035 1036 1037 1040 1041 1042 1043 1044 1045 1046 1047 1050 1051 1052 1053 1054 1055 1056 1057 1060 1061 1062 1063 1064 1065 0702 0703 0704 0705 0706 0707 0710 0711 0712 0714 0715 0716 0717 7Q ANALOGi LING SAMXi 0 5600 7200 1325 3727 5237 JMP I INPUT CHGSAMf CLA TAD NEWSAM DCA OLDSAM JMP ANARTN 0020 0000 1000 0000 HAXORPf DRPMAX NEWSAM, 0 1000 P1000I OLDSAM, 0 2 {7i 0721 0722 0723 P1000 NEWSAM OLDSAM Tad DCA TAD CIA TAD SMA jhp TAD SPA IS2 rti 0 /I OS 6141 0000 0002 1326 3325 1727 7041 1325 7540 KTO 5320 1324 7710 2200 I /SAM X AXIS /POP /MAKE POS /CHK FOR 1 BIT /INCREASE NEWSAM S2A CHGSAM MAXDRP CLA INPUT /X AXIS READY ? /YES /CHK FOR /TOO FAR ? /YES ADV TO /HALT RTN /NO 60 TO DVK*1 /UPDATE /OLDSAM I 0724 0725 0726 0727 0730 0731 0732 0733 0734 0735 0736 00 00 AD OR # 0000 0000 0000 0000 0000 0000 CDFVAL ENOUQi 1000 1001 1002 1003 1004 1005 1006 1007 1010 1011 1012 1013 0000 1025 7650 5600 1420 7640 5600 1022 7640 5600 1424 3020 ENDHI KFREQ, FREO, HOLD, f /NOW CHK Y /AXIS /MAX X AX DROP 0 0 0 0 0 0 0 «1000 MESCHK, 0 TAD SNA JHP TAD S2A JMP TAD S2A JMP TAD DCA QUECNT /TTY CHK /IS QUE EMPTY ? CLA I I MESCHK AOMESS CLA MESCHK I TTYFLG CLA MESCHK QUEOUT AOMESS I I 1014 1024 TAD QUEOUT 1015 1016 1017 1020 2024 1265 7640 5223 TAD ENQUE S2A CLA JMP ,*3 1021 1022 1023 1024 1025 1026 1027 1030 1264 3024 7240 1025 3025 1420 2020 6046 TAD OCA STA TAD DCA TAD 1031 3022 DCA TTYFLG ISZ QUEOUT /YES XIT /NO IS A MESS /IN PROCESS ? /YES XIT /NO IS A CHAR /IN PROCESS ? /YES XIT /NO NEXT MESS /TO BATTERS /BOX /ADV QUEOUT TO /NEXT MESS /IF AT END OF /QUE ADV TO GO /DO NOT COLLECT /S200 STQUE QUEOUT /BACK UP COUNT QUECNT QUECNT AOMESS IS2 ADMESS I TLS /KICK OFF 1ST /CHAR /INTERRUPTS /WILL CARRY THE /BALL FROM HERE /SET FLAG TTY /IS BUSY 1066 1067 1070 1071 1072 1073 1074 1075 1076 1077 1100 1101 1102 1103 1104 1105 1106 1107 1110 1111 1112 1113 1114 1115 1116 1117 1120 1121 1122 1123 1124 1125 1126 1127 1130 1131 1132 1133 1134 1135 1136 1137 1140 1141 1142 1143 1144 1145 1146 1147 1150 1151 1152 1153 1154 1155 1156 1157 1160 1161 1162 1163 1164 10 32 5600 1033 1034 1035 1037 1040 0000 3266 1025 1262 7450 5257 1041 1042 1043 1044 1045 1046 1047 1050 7700 5633 1266 3423 1023 1265 7640 5254 10 1 2 64 1052 1053 1054 1055 1056 1057 1060 1061 1062 3023 7410 2023 2025 JMP HtSuHK 1 /iNPUT 10 36 QUPUT $ INMESSf 5244 7755 A CLA 1 IP* QUPUT I QSAVE QUE IN I QUE ENQUE CLA I , i SZ QUE IN Si QUECNT Hi A V/ 10 64 106 5 63 73 b 1362 0000 0000 1507 3266 104 7 3302 ENQUE T i f°\ \ \ UCD 1 r" ModUSP VT t 1 /S.200 PTR /ADV COUNT / AD V /PUT BUSY /MESS IN QUE /-"MAX NUM OF /MESS*1 /ADDR OF 8Uo /MESS -ENOQUE # QS AVE# 0 OOMTPi 0 TAD DCA TAO DCA TAD OCA TAD OCA 1046 KBLKCT QSAVE 1 MTPLOP LINC LMODE 0000 0 000 0000 TPLOF? TPINST? TPWORD 0 0 p /WRITE TAPE /wMUM TO DO ARGHI TP I NST ARGLO 3303 1372 3301 6141 0011 1020 1001 1200 1103 1560 7000 0450 7124 0011 3113 1200 1103 0450 7137 /YES COLLECT w T Ry y QUL 5 716 3 MEsiS /TO QUE /bA VE ADDR /CHK FOR QUE /FULL /I SLOT LEFT ? /YES INPUT BUSY /NESS /FULL ? /YES INHIBIT MS /NO INPUT MESS /TO QUE /IS QUEIN AT /GO 1 -^'4 STQUE QUEIN QUEMAX# STRQUEwENDQUE BUS T Mb 1101 1102 1103 1104 1105 1106 1107 1110 1111 1112 1113 1114 1115 1116 1117 1120 1121 1122 1123 SMA JMP TAD DCA TAD TAO S2A JHP TAD DCA SKP T8US JMP I QUPUT CLA TAD BUSYMS JMP INMESS TBUS Y, 0676 1 100 QSAvE QwtuNT QUEM AX I 5633 72 00 12 6 3 DCA TAD TAD SNA JMP i 1063 1066 1067 1070 1071 1072 1073 107 4 1075 1076 1077 0 TPWORD LDFSTR TPLDF 0 JHP TPWAIT CLR IDA I 1001 LAM /LOF N /MTP INST /MBLKXTBLK /LINK BIT /ADV TBLKi MBLK TPWORO P7K# 8CL I 7000 A2£ JMP GOODY CLR ADD P7K LAM /TBLK WRAP /NO /LINK /8U MBLK ? /END OF OF /NO t TPWORD A2E JMP 8YMBLK ll6t? 1166 1167 1170 1171 1172 1173 1174 1175 1176 1177 1200 1201 1202 1203 1204 12 05 1206 1207 1210 1211 1212 1213 1214 121!? 1216 1217 1220 1221 1222 1223 1224 1225 1226 1227 1230 1231 1232 1233 1234 1235 1236 1237 1240 1241 1242 1243 1244 1245 1246 1247 1250 1251 1252 1253 1254 1255 1256 1257 1260 1261 1262 1263 1124 0472 1125 1126 1127 1130 1131 1132 1133 1134 1135 1136 1137 7137 1000 1103 1620 4000 5103 3101 1120 0001 5101 0002 1140 1141 1142 2266 5300 1143 1144 1145 1146 1147 1150 1151 1152 1153 1154 1155 1156 1157 1160 1161 1000 1102 1560 7767 1120 0707 5152 0000 0270 7163 0004 1020 0010 0001 0002 1162 5667 1163 0002 1164 1165 4465 6141 1166 1167 1170 1171 0006 0416 7163 6000 1172 0643 1200 1201 1202 1203 1204 1205 1206 1207 1210 1211 1212 1213 1214 1215 1216 0000 1021 7450 5 600 3265 3021 1223 3224 1624 7041 1265 6141 GOODY, L2£ I JNP BYMBLK LDA TPWORD BSE I 4000 STC TPWORD ADD TPLDF ADA I /MBLK WRAP /AROUND ? /NO /YES RESET /MBLK /ADV LOF 1 BYMBLK, I STC TPLDF POP PMOOE IS2 QSAVE JMP MTPLOP LINC /DONE /NO ? LMODE 22 24 7650 5220 2224 LDA TPINST BCL I 7767 ADA I CHK STC /U BIT /STOP TAPE 0 270 JMP TPWAIT ESP LDA I EXTMTP /AND CLR XOB /U BITS AXO POP PMODE JMP I DOMTP LMODE TPWAIT, POP PMODE JMS KIDLE LINC LMODE OJR STD JMP TPWAIT JMP 0 PMODE LOrSTR, FIRLOF PAGE KEYBRO, 0 TAD KBOBUF SNA OPKRTNi JMP KEYBRD OCA CHAR OCA KBDBUF TAD CHRTAB DCA CHRPTR CHRLOP, TAD I CHRPTR CIA TAD CHAR ISZ CHRPTR SNA CLA JMP MATCH IS2 CHRPTR I I /KEYBOARD SR /GOT A CHAR ? /NO XIT /SAVE /CLR BUF /START OF TABLE /SEARCH FOR /MATCH /ADV PAST JMP /ADV TO NXT CHR 12 64 1265 1266 1267 1270 1271 1272 1273 1274 1275 1276 1277 1300 1301 1302 1303 1304 1305 1306 1307 1310 1311 1312 1313 1314 1315 1316 1317 1320 1321 1322 132 3 1324 1525 1326 1327 1330 1331 1332 1333 1334 1335 1336 1337 1217 1221 1222 1223 1224 1343 1344 1345 1346 1347 1350 1351 1352 1353 1354 1355 1356 1357 1360 1361 1362 i HATCH r s AU s no uHHKiH i. DCA i% ts uD MD ,*1 /LOAD A Jfir /Stnyt VIA // vj M nD r 0 T 1 1, QT NC t CHRTABi KBDTAB CHRPTRi 0 o /KEYBOARD LOOKUP TABLE r u H n A CuUc= Or utr Into LH AH AoC /LOCA M 0 R0U f r u /LOCA^l /THE LOC CHAR IS IN T A MO T4 f\t VT DO Dnl /HATCH 1 HL DEFAULT CASE T Q0 Jnr 304 / u KBDTA8* / O JMP I KD U i Au A 210 1 f i -J 1^ 1 I i . f 1 1 1225 122 6 1227 k3 00 «f 071 5A "7 -1 SS 0210 r< i RuH yu 1 DC / H JM 1231 1232 0310 5311 /H 12 33 03 20 1234 1235 1236 5667 0306 1 23 7 (7i 310 JMP H 320 KP JMP 306 JMP I KF 307 JHP G Tr (^jt yr 3<:^ O /o /b t T Ur 124 0 1241 1242 u i I 5 67 0 1 0O0 / 5315 0323 rx "7 o 56 72 s; iC "7 JMr 32 JMP 000 JHK I r\o I K 1243 1244 1245 1246 0327 5673 0303 5342 T O *7/ 12 ^ / 12 50 1^0 ID O13 Si o1 4 K i; c A 314 uMP 0D 26 0 2 60 5321 JHP NUH 'P 1252 r« "a v) rt! Tf 1 /lift) /HALT «r /r /POLAHJ TY /F y IT D c* c 3 cr y r r» /W /WRITE 1254 1255 1256 125 / 1260 1261 1262 1263 Art UA AwAU /w* ALL C 1 y M 4 / / L 'wMLL UUAUtW L jii rtf b JMr NUM 262 JMP NUM 263 JMP NUM 264 53 21 0262 5321 0263 5321 0264 JHP v)^ 1 CHAR, NUH 1266 1267 1270 1271 1272 1273 1274 1103 1275 1276 7650 C 5600 SNA CLA JMP ! KEYBRO 1277 3103 OCA MODE 1300 6134 CLEN it rtl ffl AInU y /I 0 261 ra ra (Ta /-a H y 0 0000 5600 0500 0514 0473 0526 0533 12 65 1 y /L Tt fiH "Z fr OK 1 25 3 nWC All T 12 3 0 1 340 13 41 13 42 5210 1624 3222 m 0000 oo 1225 0000 /Utr AUL 0 JMP I KP KF? p F KOi KSi 0 S KH # w CTRLH. TAD MODE 1 ' L Abb KEY8R0 /QTRLH KEY /™0 FuK pAUat /«*//// run AMJ M On C O // r AAMCC* U o t n JUL i y V II^Mf^DiT /Yto IbNOKt /C RLH /btT MOPt ru C3 1 /PAUSE /DISABLE ALL /CLOCK /INTERRUPTS wu 13 01 3 06 6 " i OA U 4 i X A C X wV ^ 1302 3 06 7 W 3 07 0 nrA ^ O C, U U V O TAD Ml 1 ^7 1 1 30 7 1 "^7? XwXM 3071 3072 1363 4 505 5600 UOM 1370 304 1305 1306 4, •? 1 Xw It/ 1 J. ww ' / nr <s ri r pt )mQ IMP n n\/? t ! TAI KDl IPIIT VQRn 1 o / o 74 1 ^7 *^ "^7^ 1 O / Q X 77 "^1 1 1 O XX X 7C54 X O JL XO XA W *T O4 oo (?i ? t 1 O "XI X o^ X 1X14 XOX~ 1 XX 1 S XO o 1X16 wXU X 33 •J w A5 O^ * 1X17 XO X / XA O^ O 04 ^ fTl*^ iw'^ X4 X O cL tU 1 X P X 0 c. 1X 1 *t Iw ly W 1 1 t |£f X X4 ^ X 4 1 t?l X" XH iiJ 1 *t X4 1 (71 ic> A 0 f lu "f |y X t. 0 -? X w (- 1^ 1 C~ X X?4 w A7 31 W X P14 11 X X (A4 1^ *t 14 x*t 1? xc; IX 25 10 3A 1414 ^ X^ X 1 XP5> c e. XO 1 1326 XW 6- XP7 1 «# Ml tM . n 9 ui W ^T T oO UL* A iM p Ho W i kT vD on T A n AU rU n w M AA D PP 1 7 nrA U w A TTMP tnr TAH TPMP CM A r IMP ? 11/ (7i fcy 16* j A |/r vORH nrA n0n i U U A uQwtT UA T Mr T "HAL' J MP TADU l^<^UITT uO i 1 X X <JS -3 O n OW 4 r A wUA Mu ' 1 I A "X /Tj rr'Ai vTT XIT /ILLtbAL 1 uHK U CLK b w ypn rn uait cp fU HAL' OK yUU ynJU ! 1 i I iN i /yiiKtnrr UNUtr tmch i N tU yn rw m m f ULy Un Nn oKin A aPp Kb /ytc 10 cNU D u r UK yy rn H o/ 33 A 57 A A 1 3 ^ AS X o> v.* r r n uK // p U uk" n U u V iM u n AU 1 1X^3 XOOu 1422 X~ KL T I QM A 0 NM (MP "^34 w y NU n /oTKir AbuII 5 Xs «^ w o 1 mo own i 7700 ''10 1 ycTT ? SA u •rf' 1 y T to i T P b yMn V T T y T to y/pn bU CL" o W T TnU bU pn CR 5 yp r 11T ' 1424 1337 56 w 14 2t? 13 40 33 65 142 6 1427 1430 X ~w 1431 134 1 1342 Xw ~C 1343 X ~ 1344 1432 1345 ~X 61X 41 14 33 1X46 Xo ^w 7517 X 4 7 X "J 1 X ic; X 1X £?i X O 7 64 1 4.^ ~ w ft w X 1 4*^7 1X51 O X X «^ ACi CI ic^ C A 4X 1 o 1X«t 1 1440 X~^ 1441 X~~X 1353 1354 Xw ~ 355 1X56 XO u 1357 136 0 75?? A{^(7IPIaMAP 11 X X (?53 w 76 40 TA A n u wnu nr n UL y n Abbr T r VT yy r\ ^3C MA w IMD P A WUA A M /y D r AU T yiNU Ail rrT /yvrQ bL T tb y K! A Mr Tn iN An t / U y n A nrn / w U AULU 1434 143^ Itf 14 42 14 43 14 T4 i 4 1 44 ~T -T 1446 1447 45^ 1451 ^ X 4S? 1453 1454 1455 1456 1457 1460 1461 1 1 C. sJ 1 X ' 1 A 0 rv M fJ w MP T C^^ (?! ic; ic^ s } TAH MH nr OCA WUA 5600 JMP w# tc/ o T i i I y r A U ofc. nU Ufc. « kFVRPn ? MP / Y A!!?I!71C'^aP AT A rQ 1 AAn A r* A yy r b AAT Ab AL i M . AU ! Q 7A OCA {?i IL/ i 5A w {?!£?! 161 6002 6141 UUt r A OUA ri 1 i^rvopn IMP T T M r w T / n K fc. T yrAUoL nUDt y NU i b INUK L 1 WfVQDn nr ! y M A r c D V L 1 t Qr OL MrtnC nUUu MP 1 XA OX 0 / n yTLb LOAD 1 1 Mnnr i> * Donr rHUb or DC. LI r 2 IMD AAn DMnnr X wVc U X ^ U \JX XO A 1 OA OA 0X y A HL T AL L 1364 1365 1366 1367 1370 00 1" lu K/ ly nw 0000 1400 0017 1411 U w r( A 1 r V DP uo n i T kf r ri 7 / 64ffl wt 11 X X C13 W 1 ^ A U IMP Lr f U ^A C^Ki ^ ic I y Ti Q y 0 13 36 iC i 1 1 It/ A 1 1 I r A ri A WM n A Up UM AMn {?53 0 / ot b Ln r KTVPRn T vc X O^.X>' 1 XO c> c> 1 1X^1 X s? w X 1 4?1 ^ X X *t ANU 1 nPA U<sLfTT MO W 1 Ut-» A nfA b Or) 1 U U A ft^UTT X 3A4 O *T 7 ABC1 X.X0 1 w w X 1417 XtX 1 X 4Pd CV ' rt 1 U WA 1 / r UK A <iN U LH AK / OL run ^(NU yu ANU Akin r* yn w i^ammht CANNUT / D U T n dL oL r A nM wM M n .I IMP 1 4 * (717 X k3 / 1 IC X 41X CI X™XX X~X 1 X41 XA v> /PUT Mr^Q r U LO0 / oW i 1 1 1 I / n i. n Q Utr wV Ti rUtr O A / ALU ' ^ *t 1 I 1 1 i '''i 1 1 ( KHALT PP17, KGOi ALL HL T * (71 ' KJ HALT 17 GO /HERE TO HALT /A DEVICE HALT PAGE TAD TEMP 1463 1464 1400 1104 1465^ 14k!Jl 1100 TAD SElPTR 1402 1403 1405 3306 1706 7650 5705 OCA ATEMP TAD I ATEMP SNA CLA JMP I KEYXJT 1406 3706 DCA I4v3 7 4501 5705 1104 1100 3306 1706 7640 JMS JMP TAD TAD DCA TAD SZA JMP KHLTMS KEYXIT TEMP SELPTR ATEMP ATEMP 4502 1104 1307 3310 1710 3310 1104 1312 3311 1711 3311 7146 1104 7740 7107 1313 JMS TAD TAD OCA TAD DCA TAD TAD OCA TAD DCA KGOMS I TEMP TIVAL FROM FROM FROM TEMP TI ADR 1441 1442 1443 1444 1445 1446 1447 1104 3264 1104 1316 3104 7040 3504 1314 3104 TAD DCA TAD TAD OCA CMA OCA TAO DCA 1450 6002 lOF 1451 1452 1453 1454 1455 1456 1457 1460 1711 3306 1710 3706 2310 2311 2104 5251 1466 1467 1470 1471 1472 1473 1474 1475 1476 1477 1500 1501 1502 1503 1504 1505 1^06 1507 1510 1511 1512 1513 1514 1515 1516 1517 1520 1521 1522 1523 1524 1525 1526 1527 1530 1531 1532 1533 1534 1535 1536 1537 1540 1541 1542 1543 1544 1545 1546 1547 1550 1551 1552 1553 155 4 1555 i:?56 1557 1560 14 04 1410 1411 1412 1413 1414 1415 1416 1417 1420 1421 1422 14 23 1424 1425 1426 1427 1430 1431 1432 1433 1434 1435 1436 1437 1445? G0# 5 7 05 I ATEMP I /IS DEVICE /HALTED ? /YES IGNORE /HALT COMMAND /0 T0 SELECT /WORD /PUT HALT /MESS IN QUE I I CLA I KEYXIT /START A DEVICE /GET AOOR OF /SELECT WORD /IS THE DV IN /A\0 MODE ? /YES IGNORE /GO COMMAND /PUT GO MESS /IN QUE /GET ADDR OF /DV GO VALUES I TO TO TO C L L CMA RTL TAD TEMP /GET PTR TO /WHERE THEY /GO ! SMA SEA CLA CLL lAC RTL TAD ASAM GOLOP# /HOLDS DV NUM /TO BE HALTED /PTR TO 1ST /SELECT WORD /THEY OCCUR /SEQUENTIALLY TEMP INISAM TEMP HLTPTR TEMP I /-3 /RELATIVE TO /SAM 10 ? /U) NO SAM 20 /AC»SAM 10 OR /SAM 14 /SETUP 1ST SAM /CLP HLT SWIT TEMP TAO I TO OCA ATEMP TAO FROM OCA I ATEMP ISI FROM /TRANSFER 5 /VALUES FROM /TABLE /INTERUPTS OFF /UNTIL DV IS /SELECTED /GET AN ADDR /SAVE /GET A VALUE /STORE /ADV PTRS IS2 TO IS2 TEMP /DONE M5 TEMP I JMP GOLOP 5 ? 1 4 0 J, 1 7 1 1/11 TAD 1562 146 2 1 !? O O 0 0 06 A 1 /I 1 0X41 ^ (L i >* 0 0< 1 zi A ^ /I A UCA L 1 0 i 5_ i i er AA 1500 i 1 HA 7 i fci "7 < M k3 000 fJS N i O AM 1 ffl i yA("V »p^Ar% ^r* /GET ADDR OF /OLOSAM TU I A TEMP /5AM 10 15 1 ^A 0 7/ Xd X 7(5S A 0 / k3 0 TAU rul000 A i AT t Mr A 1 / ky 14 X » 62 A "X O 1X 0 4 TAU KCLc-N Cut N j4 C k3c /T( "7 X ^ / c 7o -t 14/1 < c; "7 •1 K "7 yt 14 /£: 1 K "7 K 14/0 1 A 7 A 14/4 t A 7 14/5 ^ 7 A 14/0 14// 1500 1501 1502 /I AXIS X /O AO Ci 14 AOP i ^ A A 00 14 / M AK * / 0 TONE INITIAL /SAM /r'iLt*Ai At /ENABLE ALL y A AA /CLOCK / N TEKUrTb r* 1 i 1/ I 7A r> / 0 1K i K77 i i '71 1601 1602 1000 1604 1 A <9 w 1 010 P i A <7I A A 0/ 10 1 c; i'5l7 lO IkS 1 5W 0 1 A 5 IC4 1K f?! 15 ky5 I K 15 Ii30A /?i 1019 1507 1510 1511 151c 1510 X o i. o 15 X * lO X T/ 1515 I5l6 1611 10 i A "Z 1 & lo "1 Oi1 /IH 1A 1 i 4 A O i Oii t!? CLA TAu MODt C D A CLAA orA JMK *0 T A n c AOMb TAD JMS KQUPUT 1100 r* 1 / /I 0 5 Ok7kS , A ^ fit 4 50 5 I 7240 7 7 010 0 6001 5/0 5 1 S TA n A nUC # 0 0 ni 00 00 TI VALi F" o n LI TA TO A XAA 0 00 0 1 rtl /Tl ffl 0 9 I AUK A A D T A O AyH TAD 01X0 i A C A M Ao An 1 77 / / 7 / 0 ri 1000 77 0070 PL 1000 # 10 00 U To HLTT laPTR > NSW 01 READY VAL^ AS 0110 ffl IS r\ rs 1/ D AT t W rir /SAM 10 5 1 1 I T 0 LMODE lo •1 A TO « AT 7 1 A O ^ 10 151/ 1520 15^1 15 O "3 O 1020 1575 7CK /550 1020 1 rx fli 1.0 iLD AOA 10^0 1 5c 0 1 1 5c 4 / 5 50 A 4 4^o 00 1 IAD"? 1 A X O 0 iO 1 1 A ^ 1 001 X A « O 1 0oo A *7 4 y1 1 63 i A oo S-? 1 1 A loo A0 1 A 7; 7 10o / •» *T O4 X A 1 ffl itJ 1 *t 1 0 /I 1A 1 A49 1 A4 < 0*t 0 X c; 1 5c 5 15C / KXa 150 0 50 1 1 5 607 1500 1504 LODPTR^HB SET BETA2 ANSWER*2000 LDH I BETA2 I An no LOuLUr 1 1 0 4/0 A2E COM 0017 QAEOLl 544. Cl 1 K 1 C JA XA O I? 1 A R 1 JL U i. <i! XA 7 1 OoO / f 502 T 0 101 u24 1 R A 0( 15 00 1 c; <d zl 15^4 7/ 7/ 7/ 01 0 77 7 0( / / X5 5 1 R 4 o X *T A 1 10 A0 07 STA I LuA AA T I •1 15 i it i7l cV) r» C" 1 1 J * I 1 C* /END OF NAME /YES GET UNIT /TO LOD TABLE /UNIT WD I 0 / 1 BETA! X57 / 1 A 01 7 10 0/ AAD T D TR»l LOOP 1653 1 55 0 ~ ly 7 c Tf 0 U 16^>4 1551 0500 lOB 1655 1656 1657 TO 77 t i 1 A O^ ^ cP X It; 0 T ! 00 /FROM QA /SET JMP GETU CTLJ Ar""f44 STH BETAl I JMP LOOLOP A A A O LDH BETA2 OA 8CL Stl /LOAD PRGM X /GET NAME FROM /QANDA ANS buf I 7 / R 4O 5A 1 /I AAn uAr^e^nw MAGSPY /LOAD I T/ 4 A {% n 1 A ** 7 0d / X -«/ I 15 0/ i c; 4 * it? # 1? *t A OA O XA 1 KLO A 0 0064 2 52 4 102 4 n A f LUA I MAGr JMP LOADER LDF 2 oET BETAl 1 # 11 154X KA 4^O 15 1 MAT MAG 15C 0 K 15 0 0 i A^ 10 ** 3 1 *» 1 o*» d 1(50 /LOAD CATACAL I CATPTR-1 JMP LOADER A7 00 171 1 50 c. LDA 01 O 1A 00£: 7 K K ni 1 5 cO 1 CATAi ni 1 i /OV KtYXIT I MS AD W Kk KTN Or K a A T C f5( A7 ^ ^ 6061 « 0000 (Ti (T« ON I JMP 00 oi /SET AND MODE OCA MOUL (T! A7 O / i12 0 i O m7 12 (Ti A A 1 0 k34 «< I i D A5 D rT L Ac I /DllT DDfir* AM Pi /UNIT IN E6 /TABLE FOR /LOADER /ARG IS IN AC •t 1660 1661 1662 1663 1664 1663 1666 1667 16763 1671 167^ 1673 1674 1675 1676 1677 1700 1701 1702 1703 1 704 1705 1706 1707 1710 1711 1712 1713 1714 1715 1716 1717 1720 1721 1722 1723 1724 1725 1726 1727 1730 1731 1732 1733 1734 1735 1736 1737 1740 1741 1742 1743 1744 1745 1746 1747 1750 1751 1752 1753 1754 1755 1756 1552 1554 1555 1556 1557 1560 1561 1562 1563 1564 1565 1566 1567 1570 15 71 1572 1573 1574 1575 1576 1577 1600 1601 1602 1603 1604 1605 1606 1607 1610 1611 1612 1613 1614 6002 0001 0004 0641 0720 4314 0063 2372 0065 7772 1024 1063 0225 7564 0642 0720 4354 0641 0602 6020 0301 2401 0301 1477 0000 1501 0723 2031 7777 0000 0000 0000 0000 0000 0000 6002 AXO ESF Lor 1 ROC 4\314 SET BETAl 2372 SET I BETA3 I I -5 LOA I BETA2 STA BETAl BETA3 XSK JMP ,»3 LOF 2 ROC 4\354 LOF 1 LIF 2 JMP 20 CATPTR, 0301 2401 0301 1477 /I OF /CLR X08 /DIAL GRO TAB /E6 TABLE FOR /LOADER /NAME AND UNIT /TAKE 5 WORDS I I I ? /NO /GET DIAL /LOADER /GO LOADER /CA /TA /CA /L 77 /UNIT 0 MAGPTR, 1501 0723 2031 7777 LODPTRi /DONE /MA /GS /PY /UNIT 0 0 /N /A /M /E 0 0 0 0 PMODE 1615 1616 1617 1620 0000 7200 1260 3661 TPARGS, 1621 1622 1623 1624 1625 1626 1627 1630 1631 1632 1633 1634 1635 1636 3262 4463 5253 5232 1262 7106 7004 3262 5222 4463 5253 7200 7110 6141 OCA TBLK JMS I KDIG JMP ANONO JMP OUNBLK TAD TBLK RTL CLL RAL OCA TBLK JMP TPLOP OUNBLK, JMS I KDIG JMP ANONO CLA CLL RAR LINC 1637 1640 1641 1642 1120 0010 0001 0002 0 CLA TAD M10 OCA KUPLIM I TPLOP, /UNIT /HERE TO SETUP /READ WRITE SR /GET MTP ARGS /FROM QANDA /SET DIGCHK /TO ACCEPT /OCTAL INPUT /ONLY /CLR TBLK /GET 1 DIGIT /INPUT ERROR /FINI TBLK /UPDATE /TBLK /GET UNIT /INPUT ERROR /ONLY 1 ARG /SET U BITS LMODE ADA I EXTMTP AXO POP PMODE /EXT U BITS /TO X08 /NOW PUT LOW /ORD U BIT 175 7 1760 1761 1762 176*5 1764 1765 1766 17 6 7 17 7 0 1771 1772 1773 17 74 17 75 1776 1/7 7 2000 2001 2002 2003 2004 2005 2006 2007 2010 2011 2012 2013 2014 2015 2016 2017 2020 2021 2022 2023 2024 2%2^ 2026 2027 2030 2031 2032 2033 2034 2035 2036 2037 2 04 0 2041 204 2 20 43 20 4 4 204 5 204 6 1643 1644 1645 1646 1647 1650 1651 1652 1653 1654 1655 1656 1657 1660 1661 1662 1663 1664 1665 1666 1667 1670 16 71 1672 1673 1674 1675 1676 1677 1700 1701 1702 1703 17 04 1705 170 6 1707 1710 7206 7006 3263 1262 7112 7010 3262 2215 7200 1257 3661 5615 7765 7767 4506 0000 0000 4215 OCA TAD RTR RAR OCA UNI T ISi TPARGS /IN BIT 8 /OF UNIT WORD TBLK CLL /PCS TO 9 BITS TBLK cla TAD MM12 oca I KUPLIH jmp I TPARGS -13 -11 /ADV PAST /ERROR RTN /FIX UP /DIGCHK /•12 IS COM /•10 IS COM , » DOROC, JMS TPARGS KRDERR JMP TAD TBLK TAD RMBLK oca ROCWO TAD UNIT TAO ANRDC OCA TPRDC LING LHODE LDF 3 I 1262 1344 3277 1263 1341 3276 6141 0643 0000 0000 0 416 7700 1020 0020 0004 1020 0010 0001 0002 RTL MM12» M10# KUPL IH, UPLIM TBLK 0 UNIT 0 5 73 7 TPRDCi ROCWDt /HERE TO READ /PARAM INPUT /GET TBLK^ UNIT /INPUT ERROR 0 /ROC (U) 0 /MBLKXTBLK STO JMP LOA 20 ESF LOA I /I/O PRESET I EXTMTP /SET /NO PAUSE AXO POP PMOOE 1711 1712 1713 1714 1715 17 16 1717 1720 1721 1722 1723 1724 172!? 7200 1342 3052 1340 3010 1034 3011 1411 3410 2052 5320 15 10 7500 5737 7041 1061 2050 1726 1727 1730 c t)0 1 1 /0 1 / / 4 0 2052 2053 2054 2055 1732 1733 1734 1735 5737 4745 1510 5736 20 4 7 ANONO* CL A CLA TAO OCA TAD OCA TAD OCA TAD DCA IS2 JMP TAO SMA JMP CIA TAD SMA JMP JMS TAD JMP ROLEN CNTR KFIRST INIPTR MINADR ADPTR ADPTR I INIPTR I CNTR , St KLAST I KRDERR MAXOVN S2A CLA I KRDERR KFRESH KLAST I ,'^1 I /INPUT STARTS /BEG OF BUFFER /DONE ? 3 I I /LENGTH OF INIT /TABLE /START OF TABLE /CHK FOR FATAL /ERROR WRONG /TBLK AND TOO /MANY OEVS /ILLEGAL TBLK /CLR BUFFER /«NUM OF OEVS /GO TO QADUN 2056 2060 2061 2062 2063 2064 2065 2066 2067 2070 2071 2072 2073 2074 2075 2076 2077 2100 2101 2102 2103 2104 2105 2106 2107 2110 2111 2112 2113 2114 2115 2116 2117 2120 2121 2122 2123 2124 21^5 2126 2127 2130 2131 2132 2133 2134 2135 2136 2137 2140 2141 2142 2143 2144 2145 2146 2147 2150 2151 2152 2153 2154 1 736 1737 1740 1741 I74i^ 3315 4343 6000 0700 7634 4000 6000 3200 4215 5764 1743 1744 1745 1746 1747 1750 1751 1752 1343 3046 1753 1754 1755 1756 1757 1760 1761 1762 1763 1764 1765 1263 1362 3047 4763 6001 4465 5360 0726 1067 4400 0000 KROERR, KFIRSTi ANROC. RDLEN, NHBLKi RM8LK. KFRESHi DOWRC* STRRDE READ-1 /ROUT FIRST;>1 700 FIRST«LAST-1 WRMBLK RQMBLK FRSTR JMS TPARGS JMP KWRERR I TAD TBLK TAD WHBLK OCA ARGLO 12 62 /ARGl FOR /SR OOMTP TAO UNIT TAD AWRI OCA ARGHI JMS KDOMTP /ARG2 FOR /OOMTP /WRITE N BLKS ION JMS JMP 726 /WRI I AWRI , /GET TBLK, UNH /INPUT ERROR I KIDLE .=1 I KOOMTP* OOMTP KWKERR, WRIT AAAS0, 0 /DISPLAY ROUTINES /MOVING WINDOW, CURSOR /X~Y DECIMAL READ OUT /HELP FRAME SCPFLD=2000 LMODE SEGMNT 1 /=SCPFLD/2000 ^17 0017 0020 0000 0000 0021 0022 0023 6141 0460 6052 6141 SNS I 0 JMP DSCHLP 0024 0025 0104 0341 SAM SCR 0026 0002 2027 2030 2031 1366 7041 6141 0032 0033 0034 4351 0077 6777 0035 0036 0100 0344 POP PMOOE TAD P401 CIA LINC LMODE STC CURCNT-SCPFLD SET I XCORD =>1000 /INIT X COORD /-I SAM 0 /WINDOW KNOB SCR 4 /HI ORD 6 BITS /DET MOTION + /IS FWD «IS BWO XCORD. 0 IDLEt 0 4 1 /DIS REGISTER /IDLE LOOP /SCOPE, KEYBRD /TTY /LINC /I OF 2 DISPS /HELP FRAME /DATA BUFFER /CURSOR KNOB /9 BITS COVERS /ALL X VALUES /MAKE + /WHEN CURCNT /GOES TO 0 /DIS CURSOR /APPEARANCE OF /MOTION IS /GIVEN BY /VARYING THE /INITIAL AODR X> w a. 00 3 7 1520 004 0 7 77 7 r r\{:^ c. c c. < SRO 7777 I /7777 MEANS /FREEZE WINDOW 2.15 7 216 0 0 041 6250 £< XWX 004 2 'J £^ \Cf fU C> Xw^ c. i. rnUUL / bCU PL P ^ w C iO 4 4 64 7 tut/ p £7 4 f 4 O W4S 4 ^ 216 7 20 4 6 2170 2171 2047 2050 56P0 1200 1000 X 310 wX 7 ."^ £?i it; >>0!i> 1 c. jy ^ X 2173 2174 2175 2176 2177 220 0 2201 C !?i B 1X ^'-^ o fey *» iw iw icf n 1 1 SET MSPTR HLPT AB«HB I SET I VCPTK 00 55 YJ J iC' WX ' I 5614 1 1 1 HCP TR HC T A B »1 MMY AT * 1 4 ^ P0 X c. k; bH 0 06 7 7 iA w A1 Ox X1 4*t FULl JMP SETFUL CLR c EbF LDH MSPTR O SKPo LOH I MSPTR SHO I CRl JMP LNNXT SHO I ENDWDl JMP SCPXIT SHD I CHGHC JMP SETHC JMP OSCCHR JMP CHRNXT LDA HCPTR STC 1 JMP CHRNXT LDA I ~ 'J\ f/i M71 7 P t fO (/1 It/ C5C^ 7 4 04 A7 0075 1337 22 23 00 7 6 00 7 7 ™ 1 X4 P0 C ~ 3 4 w (7! (?i 010 0 0101 0102 6 U0 w A1 UX o oi0o Ic? fcJ J. 1(3 *T Ct£.Oc. idii k? Cfc OO 1 2 23 4 fcJ p 0 X iw / iC' X X iC* 67 P A 7S fTI A I7i7 R 0200 !w X Xw X 1X 7r St,' X iiJ X 1 fi< X 1X >J iC 1 n nix A Alii 0111 X o^ 3n ! no* 1 0P(?I X c iO i6J iC^ ^ X ' 0261 0642 0011 0004 2166 4737 iT 9 /IST CHAR OF LN /IS LN FULL /SIZE CHARS ? /YES /L=0 FOR HAF /SET HAF SIZE /RESTORE CHAR DSCXY * /END OF LN /YES /END OF ? /MESSAGE ? /YES /RESET /HORIZ COORD /YES ? I ESF COM ROL 1 JMP CHRNXT LDF 2 CLR ESF ADO P401«SCPFLD STC VCOORD I X 0122 0123 0124 0125 0126 I 1/ Lr ffl "31 0114 X 0115 ' r~ 1 AO *f iilcl 1 0A 0 4 ^ 001 If (y X (711 ICJ I 1 4 T Pd X (C 7 7(71 0111 0112 1W J. I 4 CX /use HELP /bLL HL^TAd /FOR FORMAT /GRID TABLE /IN LDF 2 /TO DIAL /ENCODED MESS /TABLE OF /VERT COORDS /TABLE OF /H0RI2 COORDS I j 1 1 X X C?t (7i fTl 1317 1 [, IM IM ic/ IC/ 007 3 ifcJ 1 J. Ifcl 2222 2245 2246 2247 2250 2251 2252 2253 bt r <4 1337 (7? 2 24 4 ! 7 1^ 0065 0066 titj \j C?l (7! 2237 2 240 2241 2242 2243 VU T AA D W 5 "^7 (7! t?l 2 VCPTR LDA SIC VCOORD HCPTR LDA STC 1 MSPTR LOH X / 223 6 iDLt T DD Kr on n LV U M c c r* u 1/ r* LI W C IJ T 9 0 07 7 X U w I /INTERNAL HLT nc 005 3 005 4 £_ t. )C <- / TT Y 1/ )\ LDF <C £1 &OX KC aWiJ iT M fT C b i 0642 1035 2224 222 b 2226 222 7 /KE YBOARD 0052 0063 2220 t I T F I N I K Kl T unuUL 2210 2211 CXX 2212 <C 1 Muw # iN f\ N> 00 6 2 2214 I JMP r 22 07 22 lv5 JM0 Mb JIMC IMC J no i/ r\ r\ u. k; 1 S R A X Po 1 u o ^A X u 4 7 "^7 O c c, fm. s rp R T M . IC/ 2 203 P ? ^ C £L lU 4 9P S t, iD C C /HERE WHEN QO C X u ** C, X w ^ u c 1X A A £. JMP GODIS-SCPFLO-1 JMP SETMOT-SCPFLO /SET FULL SIZE /L=l FOR FULL X=*-««Y=«»» /HALF SIZE /DSC: / 2254 2255 2256 2257 2260 2261 2262 2263 2264 2265 2266 2267 2270 2271 2272 2273 2274 2275 2276 2277 2300 2301 2302 2303 2304 2305 2306 2307 2310 2311 2312 2313 2314 2315 2316 2317 2320 2321 2322 2323 2324 2325 2326 2327 2330 2331 2332 2333 2334 2335 2336 2337 2340 2341 2342 2343 2344 2345 2346 2347 2350 2351 2352 0127 0130 0131 0132 0133 0134 0135 0136 0137 0140 0077 5526 10^0 7757 1140 0737 0061 0000 1337 1420 4300 6145 6732 6137 1337 1420 6000 6145 0141 0142 0143 0144 0145 0146 0147 0150 0151 0152 0153 0154 0155 0156 0157 0160 0161 0162 0163 0467 1337 1420 4300 6131 1420 7700 6163 6732 6152 0002 2164 2165 2166 7300 5243 0401 2200 2201 2202 2203 2204 2205 2206 2207 2210 2211 2212 2213 2214 2215 2216 2217 2220 2221 2222 2223 2224 2225 2226 2227 2230 2231 2232 0002 7100 7510 5224 1346 3346 7004 1347 3347 1347 7041 1032 7 7 00 5251 1033 3347 1034 1346 3346 5251 1346 3346 7430 5233 7240 1347 3347 SET MSPTR DCODEX-HBIT NXTLN* LDA -20 ADM I /DIAL ENCODED /MESS I VCOORO SET I 1 XYHC INICHR, LDH I MSPTR SHD I CRl +3 JMP JMP OSCCHR JMP INICHR LDH I MSPTR SHD 6000 JMP .^3 SKP NXTCHR, LDH MSPTR SHD CRl JMP NXTLN SHD . I /INIT CHARS /EOL /YES ? /DO NOT DSC /LEADING 0S I I /EOL /YES ? I SCPXIT P401 , SETMOT. ENDWOl JMP SCPXI JMP OSCCHR JMP NXTCHR PDP PMOOE CLA CLL JMP SCPRTN 401 '^SCPFLD + 200 2 CLL SPA JMP 8WDM0T TAD 8UFL0 DCA BUFLO RAL TAD BUFHI OCA BUFHI TAD BUFHI CIA TAD MAXCDF SMA CLA JMP GODIS TAD MINCDF DCA BUFHI TAD MINADR TAD BUFLO DCA BUFLO JMP GODIS 8WDM0T, TAD BUFLO DCA BUFLO S2L JMP CHKADR STA TAD BUFHI DCA BUFHI /END OF MESS /YES ? /RTN /GET INIT BUF /AODR FOR DISP /DELTA X IN AC /PDP /FWO OR BWD ? /UPDATE 15 BIT /ADDR /CHK FOR HI /END WRAP /AROUND /OK ? /YES /RESET LO END /NEW AODR IS /REL TO MINADR /BU ADDR /UNDER FLOW /NO /YES BU CDF /BITS ? 2^55 2 354 235t> 23t>6 2^57 2360 2361 2362 2363 2364 2365 236 6 2367 2370 23 71 2372 2373 2374 2375 2376 2377 2400 2401 2402 2403 2404 240t> 2406 2407 2410 2411 24 12 2413 2414 241t> 2416 2417 2 42 0 2421 2422 2423 2424 2425 2426 2427 2430 243 1 2432 2433 2434 243t> 2436 2437 2440 2441 2442 2443 2444 2 445 2446 2447 2450 2451 CHKAOR 2233 2234 2235 2236 1033 704 1 134 7 7 740 2237 2240 2241 2242 2243 2244 2245 5251 1034 7041 1346 7500 5251 3346 JMP TAD CIA TAD SMA JMP DCA 2246 2247 2250 1032 3347 0002 TAD MAXCDF DCA 8UFHI 2251 2252 2253 2254 2255 2256 2257 2260 2261 2262 2263 7300 1346 3054 1347 3060 4320 1350 3053 7200 1454 6141 0264 0341 0265 0266 0267 0270 0271 1520 0000 0017 0177 0002 2272 2351 2273 2274 2275 2276 2277 2300 2301 2302 7410 5752 2054 7410 5303 2053 5261 5753 2303 2304 2305 2306 2307 2310 2311 2312 2313 2314 2315 2316 2317 2320 7200 2060 1060 7041 1032 7700 5316 1034 3054 1033 3060 4320 5300 0000 TAD H NCDF CIA TAD BUFHI SMA SfiA CLA I GODI S MINADR 8UFL0 NXTPNT , CLA TAD DCA TAD OCA JMS TAD DCA CLA TAD SRO I /CORRECT ADDR /IS IN AC /SET CDF BITS /BWO WRAP /SOMETIMES HERE /IN LMODE (POP) /SET BUFPTR /TO INIT ADDR /SET CDF BITS /SET DATA FLO /SET FOR /512 POINTS BUFPTR /SCP MAX IS 9 /BITS /7777 INVERTS I /SPECTRUM 0 COM DIS POP ? /YES CLL BUFLO BUFPTR BUFHI CURCDF SETCOF M1000 8CNTR LINC LMODE SCR 1 POLAR, /ADDR BITS /OK GODIS eUFLO 2 GODIS* /CDF BITS AT /LOW END ? /NO I XCORD RHODE IS2 CURCNT SKP JMP KCUR ISl BUFPTR SKP /READY TO DIS /CURSOR /NO I CURRTN# FWORTN# JMP FWDCDF IS2 8CNTR JMP NXTPNT JMP KXYGET I FWDCDF » BYWRAP, SETCDFi CLA \Si TAD CIA TAG SMA JMP TAD DCA TAD OCA JMS JMP 0 /CHNG FLOS /NO /512 /NO /YES /X-Y /AOV PNTS ? ? GET COORDS CDF CURCDF CURCDF MAXCDF CLA BYWRAP MINADR BUFPTR MINCOF CURCDF SETCOF FWDRTN /WRAP AROUND /NO /SET CDF REL /TO CURCDF ? 2^52 24^3 2434 2455 2456 2457 2460 2461 2462 2463 2464 2465 2466 2467 2470 2471 2472 2473 2474 2475 2476 2477 2500 2501 2t?02 2503 2504 2505 2506 2507 2510 2511 2512 2513 2514 2515 2516 2517 2520 2521 2522 2523 2524 2525 2526 2 52 7 2530 2531 2532 2533 2534 2535 2536 2537 2540 2541 2542 2543 2544 2545 2546 2547 2550 2321 2322 2323 2324 2325 2326 2327 1060 7104 7006 1031 3326 0000 5720 TAD RAL RTL TAO DCA CURCDF CLL COF0 ,+1 0 JMP I SETCDF /OBL PREC ADD /OF /(DBLHI, OBLLO) /(ARGHI ARGLO) /ANSWER IN /(DBLH WDBLLO) /L30 IF * /LSI IF « , 2330 2331 2332 2333 2334 2335 2336 2337 2340 2341 2342 2343 2344 2345 2346 2347 2350 2351 2352 2353 0000 7300 1044 1046 3044 7004 1045 1047 3045 7100 1045 7710 7020 5730 7000 0000 7000 0000 2700 2400 OADDi 0 CLA TAD TAO DCA RAL TAD TAD DCA CLL TAD SPA CML JHP CLL DBLLO ARGLO OBLLO /=XCURLO DBLHI ARGHI DBLHI /sXCURHI DBLHI CLA I DADO BUFLOi AORMIN BUFHI, CDFMIN M1000, sl000 CURCNT, 0 KCUR# CURDIS KXYGET. XYGET *SCPFLD>400 2400 2401 2402 2403 2404 2405 2406 2407 2410 2411 2412 2413 6201 7200 1325 3055 /240 1036 3052 1455 3044 2055 1455 3045 2414 2415 2416 4437 7430 5232 JMS I KOADD SZL JMP FOUND 2417 2420 1044 3050 1045 3051 2055 2055 2055 2052 TAD OCA TAD OCA XYGET, COF CLA TAD DCA STA TAD DCA TAO DCA 0 KLIM LIMPTR DEVNUM CNTR LIMLOP, LIMPTR I OBLLO ISZ LIMPTR TAO LIMPTR DCA DBLHI I /FIND REL OEV /ADDR IN BUFFER /RESTORE FIELD /HOLDS ADOR OF /TABLE OEV INFO /« NUH DV /-ST ADOR /FOR OV K /ADOR TO OBLLO /CDF BITS /TO DBLHI /XCOORD IS IN / (ARGHI lARGLO /IS XCOORD GE /ST ADOR DV K ? /NO ADOR LIMITS /HAVE BEEN DET /SAVE OIFF FOR /OV K IT IS REL /ADOR FOR DV K*l ) 2421 2422 24 23 2424 2425 2426 ISE ISZ ISH 132 DBLLO TEMPLO DBLHI TEMPHI LIMPTR LIMPTR LIMPTR CNTR /AOV PTR TO /NEXT ST /ADDR /SCANNED ALL /DEVICES 2b 51 2 ':>o2 2 5t> 4 25^6 2557 ^36 0 2561 2562 2563 2564 2565 2566 2567 2427 2430 2431 5 031 JMP LIMLOP JMP 1 2 04 3 SCPRTN 2432 2433 3 04 4 2434 7346 1055 3055 1455 3052 2 435 2436 24 37 2440 2441 24 42 2 5 70 2443 2 5 71 2 44 4 71 25/2 257 3 2574 2575 5207 30 45 1 051 3047 1050 304 6 'J Ci. 2446 2 44 7 OmC 2052 5245 1^ FOUND DCA DBLLO DCA DBLH I ST A CLt RTL TAD DCA TAD DCA TAD OCA TAD DCA JMS I Sc JMP L I MPT R L IHPTR UIMPTR I To CNTR TEMPH ARGH tehplo A RGLO KDADD TQ CNTR r> 11 O U "7f "7t 2602 2 60 .5 'J Of 2451 2452 "2 Dl e c 0 05 5 I S2 L I MP TR TAD I L IMPTR DCA L IMPTR C !h A 2605 2606 2453 2454 26 07 2610 24 55 2 45 6 2611 2612 2457 2460 26 li 24 61 2614 2462 O A A. X A A ^404 201 / O40K /t id 240 0 2621 2622 2623 2624 2625 2626 2627 26^0 O A T 2 00 'J 1 cc 2055 1455 -1 2470 2471 2472 24 73 24 74 2475 2 47 6 o A O COOO "7 "7 £^ 2467 f / OE ^91 X A 263 7 2 64 0 O <C y5 -1 TAD DCA TAD DCA TAD DCA D8LL0P# TAD DCA ISZ TAD DCA 1044 3050 1045 3051 4437 2053 DBLOEF, TAD DCA TAD DCA fin er 7 420 KO 5 27 0 •Tf 7240 i E 1053 3456 2056 1050 ffl i£0O*» 2635 coob 1326 3056 1327 3057 1330 3052 1457 3047 205/ 145 7 3046 O 205C T7 Tm T 3053 2502 cm1 2503 2504 2 505 2506 2 64 2 5 A^ c 0H0 250 7 2644 2645 2646 2647 2511 2512 2513 2514 Tf 3 04 4 1051 304 5 0 ^Tj co 5261 1044 3456 6141 /ANSWER IS IN /TEMPLOi TEMPHI /CLR DBL AC 5»3 /BU PTR /TO DEV ICE /SAM FREQ /MULT ANSWER /BY SAM FREQ ) ( I r* 25 76 CO 26 0 0 2 6 01 ? /NO /YES CURSOR I /IN VOID AREA /DO NOT DSC X»Y KBCD 8CDPTR KRAD R ADPTR NEG5 CNTR RADPTR I AR6HI RADP TR RADPTR ARGLO ISZ RADPTR OCA 8CNTR I DBLLO TEMPLO OBLHI TEMPHI JMS I KDADD SE 8CNTR /DONE ? /NO /YES REL OCTAL /ADDR NOW IN /DBL AC OVERT /TO BCD /ADV TO BCD /ADDR FOR DV K / (LO TO HI) /5 DIGITS /ADDR OF BCD /ANSWER /PTR TO /DECIMAL RADII /«100K>«10# HI /«100Kr^l0i LO /COUNTS MULTS /OF PWRS OF 10 /SAVE LAST /DEFLATE /DEFLATE 1 TIME I SNL JMP DBLOEF STA TAD BCNTR BCDPTR DCA !SE BCDPTR TAD TEMPLO DCA 08LL0 TAD TEMPHI DCA D8LHI ISE CNTR JMP DBLLOP TAD DBLLO DCA I BCDPTR LINC I /MINUS YET ? /NO CONT /CORRECT FOR /OFF BY 1 /SAVE /RESET TO /LAST VAL /DONE BOTH /NO /UNITS 7 2650 2651 2652 2653 2654 26t>5 2656 26^7 2660 2661 2662 2663 2664 2665 2666 2667 2670 2671 2672 2673 2674 2675 2676 2677 2700 2701 2702 2703 2704 2705 2706 2707 2710 2711 2712 2713 2714 2715 2716 2717 2720 2721 2 722 2723 2724 2725 2726 2727 2730 2731 2732 2733 2734 2735 2736 2737 2740 2741 2742 2743 2744 2745 2746 0515 0516 0517 0077 1533 0002 2520 2521 2522 1330 3052 3053 2523 2524 5724 2600 6443 6435 6417 7773 25 25 2526 2527 2530 LMODE SET 1 XCORD 0C0DEX*4 POP RHODE TAD NEG5 DCA CNTR DCA BCNTR JMP 8CD10P LIMVL0 8CDVAL RADVAL /SET PTR TO /X-Y TABLE /SET FOR 5 /BCD ADOS /HOLDS BCD /CARRYS I KLIM, KBCDi KRAD, NEG5, /CONT NXT PAGE -5 /ADD ABSOLUTE /DECIMAL VIA /LIMPTR TO /DECIMAL XCOORD /VIA BCDPTR AND /STORE FINAL /RESULT IN /X«Y TABLE 2600 2601 2602 2603 2604 2605 2606 »SCPFLO^600 BCOLOP, CLA CLL TAD BCNTR TAD LIMPTR TAO I BCOPTR DCA TEMPLO TAD TEMPLO 2610 7300 1053 1455 1456 3050 1050 1353 7500 3050 2611 2612 7204 3053 RAL CLA OCA BCNTR 2613 2614 2615 2616 2617 2620 2621 7040 1056 3056 2055 1050 1354 6141 CMA TAO BCDPTR DCA BCDPTR 0622 0623 0624 0625 0626 0627 1357 1020 3777 2017 4017 0002 2630 2631 2632 2633 2634 2635 2052 5200 1456 1053 1354 6141 0636 0637 0640 0641 1357 0077 1535 0002 26137 I TAO Ml 2 SMA DCA TEMPLO /CARRY«0il /0^11 /0-11 /0«23 /CHK CARRY /CARRY ? /YES CORRECT /ANSER IS IN AC /L«l ON CARRY /SET CARRY FOR /NEXT BCD ADO /RESET PTRS ISI LIMPTR TAD TEMPLO TAD P60 lINC IMODE STH XCORD IDA «H8IT ADD XCORD STC XCORD POP PMQDE ISZ CNTR JMP BCOLOP TAD I BCOPTR TAD BCNTR TAO P60 LINC LMODE STH XCORD SET I XCORD OCOOEY*! POP I /ANSWER*60 /=OIAL CODE /STORE IN /X«Y TABLE /BU XCORD /DONE ? /NO /YES GET 100K /DIGIT+CARRY /NOW SET FOR /Y VALUE RHODE CLL STA RAL OCA CNTR TAD PP400 TAD YCUR DCA YCUR 2747 27t?0 2751 2752 2756 27^4 2642 2643 2644 2645 2646 7344 3052 1355 1035 3035 2647 2650 2651 2652 2653 2654 2655 2656 2657 2660 2661 2662 2663 2664 2665 1457 3046 3053 2057 1035 1046 2053 7500 5254 1457 3035 2057 1053 1357 6141 0666 0667 1377 0002 2670 2671 2672 2673 2674 2675 7200 2052 5247 1035 1354 6141 /Y 275!? 2756 2757 2760 2761 2762 2763 2764 2765 2766 2767 2770 2771 2772 2116 2774 2775 Zllt 2777 3000 3001 3002 3003 3004 3005 3006 3007 3010 3011 3012 3013 3014 3015 3016 3017 3020 3021 3022 3023 3024 3025 3026 3027 3030 3031 3032 3033 3034 3035 30 36 3037 3040 3041 3042 3043 3044 3045 /DO 1008, 108 /Y BCD OVERT /MAKE Y ^ YLOP. RADPTR ARGLO 8CNTR RADPTR YCUR ARGLO IS2 8CNTR SNA JMP *=3 TAD I RADPTR DCA YCUR ISl RADPTR TAD 8CNTR TAD DCA OCA ISH TAD TAD I TAD P57 LING LMODE STH I XCORO POP PMQOE CLA ISl CNTR JMP YLOP TAD YCUR TAD P60 LINC LMODE 0676 0677 1377 6122 2700 2701 2702 2706 2707 2710 2711 2712 3035 6214 7110 7012 3047 1054 3046 7001 3051 1351 3052 2713 2714 2715 1352 1035 7750 TAD MAXCUR TAD YCUR SPA SNA CLA 2716 2717 2720 2722 2723 5321 7040 3051 1035 1051 6141 JMP CURLOP-l CMA OCA TEMPHI TAD YCUR TAD TEMPHI LINC 0724 0725 0157 0002 2703. 2704 2 70 5 2721 STH I XCORD JHP DSCXY PMODE CURDlSi DCA YCUR ROF CLL RAR RTR OCA XCURHI TAD 8UFPTR DCA XCURLO IS /•100, 0-777 -10 /I DEFLATE /BCD VALUE /DONE ? /NO /+100# *10 /RESET VALUE /OFF BY /60-1 1 /DIAL CODE /TO X-Y TABLE /DONE ? /NO /UNITS /STORE /THE TABLE /IS FINALLY /READY /HERE TO /DIS CURSOR /Y COORD /X COORD HI /X COORD LO lAC OCA TEMPHI TAD CURLEN DCA CNTR CURLOP. LMODE DIS XCORD PDF PMODE /DELTA V *.-l /CURSOR IS VERT /LN OF LENGTH /=C(CURLEN) /IF Y COORD /TOO HI CURSOR /IS DIS BELOW /SPECTRUM /TOO HI SET /DELTA V TO •I i 3(346 3047 3050 3051 3052 30 53 3054 3055 3056 3057 3060 3061 3062 3063 3064 3065 3066 3067 3070 3071 3072 3073 3074 3075 3076 3077 3100 3101 3102 3103 3104 3105 3106 3107 3110 3111 3112 3113 3114 3115 3116 3117 3120 3121 3122 3123 3124 3125 3126 3127 3130 3131 3132 3133 3134 3135 3136 3137 314 0 3141 3142 3143 3144 2726 2727 2730 2731 2052 5322 5731 2275 0732 0733 0734 0735 0736 0737 0740 0741 0742 0743 0744 0745 0746 0747 0750 &3241 1120 7330 4014 1120 0000 1774 1774 1020 0002 0452 2743 1140 0001 6000 2751 7750 CURLEN? KURLEN 2752 7431 MAXCUR# •377«KURLEN 2753 2754 2755 2756 2757 7766 0060 0400 7774 0057 M12i P60, PP400, MM4, P57i IS2 CNTR JMP CURLOP JMP I ,*1 CURRTN LMODE OSCCHR • ROL, 1 ADA I GRDTAB-1^2000 STC GRDPTR ADA VCOORD, I 0 DSC DSC IDA P2i /MULT BY 2 /ADDR IS REL /TO GROTAB I I GRDPTR GRDPTR I 2 L2E ADD P2 ADM /MAKE H0RI2 /GAP BET CHARS /2 FOR HALF /4 FOR FULL 1 JMP 0 PMODE /=«LENGTH OF /CURSOR /MAX Y COORD /FOR CURSOR /ABOVE SPECTRUM -12 60 400 57 PAGE 3000 3001 3002 3003 3004 3005 3006 3007 3010 3011 3012 3013 3014 3015 3016 3017 3020 3021 3022 3023 3024 3025 3026 3027 3030 3031 3032 3033 3034 3035 3036 0000 3050 4217 1044 3046 1045 3047 4217 4217 4437 3047 1050 3046 4437 5600 0000 7300 1044 7004 3044 1045 7004 3045 5617 0000 7200 1045 7040 3045 1044 7041 MUL10I DSCLi TEMPLO DSCL D8LL0 ARGLO OBLHI ARGHI DSCL DSCL KDADD ARGHI TEMPLO ARGLO KDADD I MyL10 I I /TO OAC /DAC*2 /SAVE /YIELDS /0AC»8 /^DAC*2=DAC«10 /NOW ADD NEW /VAL /=DAC»10+AC /RAL DAC »DAC«2 0 CLA TAD RAL DCA TAD RAL DCA JMP DCIA, /DAC*10+AC 0 DCA JMS TAD DCA TAD DCA JMS JMS JMS DCA TAD DCA JMS JMP CLL OBLLO D8LL0 OBLHI OBLHI DSCL I 0 CLA TAD DBLHI CMA OCA OBLHI TAD OBLLO CIA /2S COMP OF OAC 3X45 3146 3147 3150 3151 3152 31 53 3154 3155 3156 3157 3160 3161 3162 3163 3164 3165 3166 3167 3170 3171 3172 3173 3174 3175 3176 3177 3200 3201 3202 3203 3204 3205 3206 3207 3210 3211 3212 3213 3214 3215 3216 3217 3220 3221 3222 3223 3224 3225 3226 3227 3230 3231 3232 3 23 3 3234 3235 3236 3237 3240 3241 3242 3243 3037 3041 3042 3043 3044 3045 3046 3047 3050 3051 3052 3053 3054 3055 3056 3057 3060 7450 2045 3044 5630 0000 3050 4217 4217 4217 4217 1044 1050 3044 5643 0000 7346 3050 5264 3061 3062 3063 3064 3065 3066 3067 3070 3071 3072 3073 3074 3075 3076 3077 3100 3101 3102 3103 3104 3105 3106 3107 3110 3111 3112 3113 3114 3115 3116 3117 3120 3121 3122 3123 3124 3125 3126 3127 3130 7012 7012 3044 1044 0306 3410 1044 2050 ^261 7200 1045 0306 3410 1045 7012 7012 0306 3410 3044 3045 5655 0017 0000 1330 3004 1036 3052 1404 7510 5323 3104 4501 7040 3404 7200 2004 2052 5314 5707 0073 3 04 0 SNA IS2 OBLHI OCA 08LL0 JMP I DCIA 0SCL4i 0 OCA JMS JMS JMS JMS TAD TAD DCA JMP UPACKi TEHPLO OSCl OSCL DSCL DSCL DBLLO TEMPLO DBLLO 0SCL4 I 0 STA CLL RTL DCA TEMPLO JMP PCKLOPi RTR RTR DCA TAD AND DCA TAD DBLLO OBLLO P17 INIPTR DBLLO ISZ TEMPLO JMP PCKLOP CLA TAD AND OCA TAD RTR RTR AND DCA OCA OCA JMP P17i 17 CHKSWI 0 CHKLOPj BYHLT, TAD DCA TAD DCA TAD SPA JMP DCA JMS CMA DCA CLA I DBLHI P17 INIPTR DBLHI /PACK BCD IN /DAC sROL 4 /MOVE 4 LEFT /UNPACK DAC /PUT IN INITAB /5 VALS 3 IN /DBLLO /2 IN DBLHI /NXT VAL /TO LOW 4 BITS /UPDATE /I VAL TO TABLE /DONE /NO ? /LAST VALS I P17 INIPTR I DBLLO DBLHI UPACK I /CLR DAC HSWPTR BETA2 DEVNUM /SEE IF TISA /HAS HALTED /ANY DEVS /«NUM DEF INED CNTR BETA2 I BYHLT TEMP KHLTMS I I /TISA HALT /NO /HLT MESS /TO QUE /CLR SWIT ? BETA2 ISE 8ETA2 IS2 CNTR JMP CHKLOP CHKSWI JMP I HSWPTR, HSWIT0 PAGE /FRESH START /CLR BUFFER /INIT ALL ARCS 3244 3245 3246 3247 3250 32bl 3252 3253 3254 3255 3256 3257 3260 3261 3262 3263 3264 3265 3266 3267 3270 3271 3272 3273 3274 3275 3276 3277 3300 3301 3302 3303 3304 3305 3306 3307 3310 3311 3312 3313 3314 3315 3316 3317 3320 3321 3322 3323 3324 3325 3326 3327 3330 3331 3332 3333 3334 3335 3336 3337 3340 3341 3342 3200 3201 3202 3203 3204 3205 3206 3207 3210 3211 3212 3213 3214 3215 3216 3217 3220 3221 3222 3223 3224 3225 3226 3227 3230 3231 3232 0000 7200 1034 3046 1033 3060 4672 3446 2046 5207 2060 1060 7041 1032 7700 5206 6201 3053 1034 3274 1033 3275 1106 3276 1277 3300 5600 FRSTR, 0 CLA TAD DCA TAD OCA CLRUOP, JHS DCA ISZ JMP /PUT 0S FROM MINADR ARGLO MINCDF CURCDF KSET I ARGLO ARGLO I ISZ CURCDF TAD CIA TAD SMA JMP CDF DCA TAD DCA TAD DCA TAD OCA TAD DCA JMP /MINCDFiMINAOR /TO MAXCDF, 7777 /SET CDF /A 0 TO 8UFER /DONE FIELD /NO /ADV FLO ? CURCDF MAXCDF CLA CLRLOP 0 BCNTR MINADR LSSALO MINCDF LSSAHI /FINI ? /NO /RESET FLO /DEV COUNT /IST AVAI /8UF ADDR /=SA DV 0 KINI LSINI KENC LSENC FRSTR /SA ENC TABLE I /INIT ARGS FOR /CURRENT DEVICE 3233 3234 3235 0000 7200 1053 3236 3237 3240 3241 3242 3243 3244 3245 3246 3247 3250 3251 3252 3253 3254 3052 1274 3021 1275 3020 1276 3010 1300 3022 3044 3045 1301 1052 3702 5633 RESTR, 0 CUA TAD BCNTR DCA TAD DCA TAD DCA TAD DCA TAD DCA DCA DCA TAD TAD DCA JMP CNTR LSSALO CURNLO LSSAHI CURNHI LSINI INIPTR LSENC ENCPTR DBLLO DELHI P4060 CNTR KTXT26 I RESTR /»NUM OF /DEFINED OVS /SA CURN DV /PTR TO INITAB /CURN DV /CURN DV NUM /TO QA TXT FLO I /INIT ARGS NXT /DV REVERSE OF /RESTR 3255 3256 3257 3260 3261 3262 3263 3264 3265 3266 3267 3270 0000 7200 1052 3053 1021 3274 1020 3275 1010 3276 1022 3300 NXSTR, 0 CLA TAD DCA TAD DCA TAD DCA TAD OCA TAD OCA CNTR BCNTR CURNLO LSSALO CURNHI LSSAHI INIPTR LSINI ENCPTR LSENC 3^43 3344 3345 3346 3347 33t?0 3351 3352 3353 33 54 3355 3356 3357 3361 3362 3363 3364 3365 3366 000/ i t rt 00 /]0 33 71 -7 00/2 3373 337 4 3375 3376 337 7 3400 3401 3 402 3271 3272 3273 3274 3275 3276 3277 3300 3301 3302 3303 3304 3305 3306 3307 3310 3311 3312 3313 3314 5655 2320 7757 0000 0000 0000 3306 0000 4060 4573 6144 7776 4100 0 0 40 0010 0002 0000 < (71 1 i c* 3316 3317 1036 305 3 3405 o410 3330 3331 J T 0 3332 3333 0H11 1 'Z^i. A 000** 3412 0^X0 3335 1411 3104 1410 3504 2053 5330 0^]Q0 1 AfU'J O*^\07 "2 3416 3417 34 20 34 21 3422 34 31 1 A ~Z ~t 4 33 3 33 56 A 1 A 0^34 7 7C 3357 000 W 3361 3362 3363 3364 'Z T! R *r 0 I? 04 3436 3437 3440 3441 JMP ISE 3350 3351 3352 3353 3354 3355 3432 IS2 jMP TAD CLA8 1 An 3430 L0P2# 5326 1304 6133 7200 1305 6132 7200 3025 136 7 302 3 1367 3024 7040 3103 1366 3021 3022 A 1 CCL loo5 3020 6001 4465 5363 33 46 TA 1n C0 t 000 3340 3341 3342 3343 3344 3345 3 34 7 1 ^ n *7 0 LOPl TAD DCA TAD DCA TAD OCA TAD DCA TAD DCA TAD DCA 1 0 34 23 L. r* CLA TAD CNTR CIA OCA OE VNUM TAD DE VNUM DCA I KLAST cV) 52 3 424 1 A'n OHCO 12 73 0 00 00 / o4 It? Q0 STRROE 35 10 33 27 0 ENCVAL 0 00 XO 3 4 04 0 0 4060 KTXT26 TXT2*6 KADRt INIAD«1 CLKCNTi -2 CLKMODi Aim ENCVAL 0040 0010 0002 QADUN^ 1036 3052 1106 3010 1303 3011 1 A n £ p 7200 1052 7041 3320 3321 3322 3323 332 4 3325 332 6 JMP NXSTR SETCDF INISTR-INIEND -1 I KSET, INILEN# LSSALOf LSSAHI LSINI KENCi LSENCi P4060 "7 Pi iTl DEVNUM CNTR KIN! INIPTR KADR ADPTR INILEN BCNTR ADPTR I TEMP INIPTR TEMP BCNTR L0P2 CNTR LOPl CLKCNT I I CLA TAD CLKMOD CLLR CLA OCA QUECNT TAD KSTRQ DCA QUEIN TAD KSTRQ DCA QUEOUT CMA DCA MODE TAD K210 DCA KBDBUF DCA TTYFLG TAD KTTY DCA ADMESS ION JMS I KIDLE JMP /ENABLE CHAN 1 /ff 3 ft /MUST HAVE 0 /HERE /DONE SETUP /NUH OF DEV /VERY LAST /ENTRY IN /TABLE /TRANSFER ALL /INITIAL VALS /I ADDR /SAVE /I VAL /STORE /DONE A DEV /NO /DONE ALL ? ? /SET CLOCK FOR /2 MS COUNT /SET IMS TICK /AND INTERRUPT /ON OVERFLOW /SET TTY QUE /PTRS AND CNT /SET A/D MODE /PUT CNTRL H /IN KEYBRO BUF /SET TTY FOR /NOT BUSY /NO MESSAGES /HANG IN IDLE /LOOP TISA WILL /IMMEDIATELY 3442 ;5443 3444 3445 3446 3447 3450 3451 3452 3453 3454 3455 3456 3457 3460 3461 3462 3463 3464 3465 3466 3467 3470 3471 3472 3473 3474 3475 3476 3477 3500 3501 3502 3503 3t)04 3505 3506 3507 3510 3511 3512 3513 3514 3515 3516 3517 3520 3521 3522 3523 3524 3 52 5 3526 3527 3530 3531 3532 3533 3534 3535 3536 3537 3540 3365 3366 3367 0022 0210 6373 KTTY, K210, KSf HQ, 3400 3401 3402 3403 3404 3405 3406 3407 3410 3411 3412 3413 3414 3415 3416 3417 3420 3421 3422 3423 3424 3425 3426 3427 3430 0000 7201 3046 3047 4437 5600 0000 1021 3410 1020 3410 1021 3044 1020 3045 4627 1044 3410 1045 3410 3044 3045 5606 3030 0000 PlOACi 3431 3432 3433 3434 3435 3436 3437 3440 3441 3442 7200 1023 3044 1024 3045 1034 3046 1033 3047 4437 CLA TAD OCA TAD OCA TAO DCA TAD DCA JMS 3443 3444 3445 3446 3447 3450 3451 3452 3453 3454 3455 3456 3457 3460 3461 3462 3463 3464 1260 3046 3047 3053 4437 2053 TAD DCA DCA OCA JMS /SWITCH INTO /PAUSE MODE STRQUE PAGE /ADO 0 1 TO OAC CLA lAC OCA ARGLO OCA ARGHI JMS I KOADD JMP I PIDAC LOHI , 0 TAO CURNLO INIPTR OCA TAD CURNHI OCA I INIPTR TAD CURNLO OCA OBLLO TAO CURNHI OCA DBLHl JMS KKDCIA TAD OBLLO OCA I INIPTR TAD DBUHI DCA I INIPTR DCA OBLLO OCA DBLHI JMP I LOHI DCJA /SA LO HI /TO TABLE I I KKOCI A, G8UK, /DBL PREC CIA LO HI /TO TABLE /DETERMINE /BUFER LEN /AS A FCN OF /TBLKS FOR /TAPE ROUTS 0 QUEIN OBLLO QUEOUT DBLHI MINAOR ARGLO MINCOF ARGHI KOADD I PL400 ARGLO ARGHI 8CNTR KDAOD I ISZ BCNTR SIl JMP ,«3 7 43 0 5247 7005 1053 7041 3507 5630 0400 0000 1314 4505 4317 TTYFLG 210 lAC RAL TAD BCNTR CIA DCA K8LKCT JMP I GBLK 400 /•LAST USED /CORE LOC /OAC NOWn» /TOT CORE /LOGS USED /ADD 400 /COUNT TBLKS /DONE ? /NO /2 BLKS OF NOR I PL400, HLTMS, 0 TAO AHLTMS JMS I KQUPUT JMS NUMPUT /PUT HLT MESS /ADDR OF MESS /INPUT MESS /OEV NUM TO QUE 3t?4i 3b42 3 !:>4 v5 3^44 3^4 3546 3b47 35!?0 3b^i 3552 3553 3554 3555 3556 3557 3560 3561 3562 3563 3564 3565 3566 3567 3570 3571 3572 3465 3466 346 7 3470 3471 3472 3473 3474 3475 3476 3477 3500 3501 3502 3503 3504 3505 3506 3507 3510 3511 3512 3513 3514 3515 3516 1036 3053 7040 1100 3011 1411 7640 5661 2053 5275 1316 4505 3103 6134 5661 0000 1315 4505 4317 5707 6527 6550 6661 3517 3520 3521 3522 3523 3524 3525 3526 0000 1104 1326 3003 1403 4505 5717 6522 1103 7700 TAD MODE SMA CLA JMP HLTMS 5 661 ! Tad oevnum HLTLOPi BCNTR DCA CMA TAD DCA TAD S2A JMP IS2 JMP TAD JMS DCA SEUPTR ADPTR ADPTR CIA HLTMS I BCNTR HLTLOP HALTAL KQUPUT I MODE TAD AGOMS JMS I KQUPUT JMS NUMPUT JMP I GOMS AHLTHS* MSHLT MSGO AGOMS, HALTALi ALLHLT NUMPUT. 0 /DEV K HALTED /NO EXIT /CHKEO ALL ? /NO /PAUSE MODE /INPUT MESS /0«PAUSE /CUR CLOCK /INPUT MESS /ADDR /ADDR /ADDR /MODE OF HLT MS OF GO MS OF PAUSE MESS 0 TAD TEMP TAD KNUM DCA BETA! TAD I BETAl JMS I KQUPUT JMP I NUMPUT KNUM, NUM0 /X-Y TABLE /FOR DSC OF /Yk»«w 1527 1530 1531 1532 1533 1534 1535 1536 1537 1540 1541 1542 1543 1544 1545 1546 1547 1550 1551 3075 4300 0000 0000 0043 3175 4300 0000 7700 0340 0240 0200 0160 0140 0120 0020 7757 7737 7717 LMODE DCODEX, 3075 CRl 00 0000 0000 00 CR DCODEY, 3175 CRl 00 0000 ENDWDl VCTAB, 340 240 200 160 140 120 20 ^20 «'40 -60 ? /PUT GO MESS 0 3 57 3 3574 3575 3576 3577 3600 3601 3602 3603 3604 3605 3606 3607 3610 3611 3612 3613 3614 3615 3616 3617 3620 3621 3622 3623 3624 3625 3626 3627 3630 3631 3632 3633 3634 3635 3636 3637 /BE I CLEN JMP I HLTMS GOMS, /PAUSE MODE ? /YES /CHK FOR PAUSE /ALU SELECT /WORDS MUST /X, = /EOL. 100K /10K, IK /100, 10 /UNITS, EOL n, ^ /EOL. 100 /10, UNITS /EOM /TABLE OF VERT /COORDS FOR /HELP FRAME /DISPLAY /D DIAL /A/D MODE /CTRL/H /HN /P /F /PAUSE MODE /GN /S /W 3540 3641 3642 3643 3644 3645 3646 3647 3650 3651 3652 3653 3654 3655 3656 3657 3660 3661 3662 3663 3664 3665 3666 3667 3670 3671 3672 3673 3674 3675 3676 3677 3700 3701 3702 3703 3704 3705 3706 3707 3710 3711 3712 3713 3714 3715 3716 3717 3720 3721 3722 3723 3724 3725 3726 3727 3730 3731 3732 3732 3732 3732 3733 1552 1553 1554 1555 1556 -100 -120 -140 -160 -200 7677 7657 7637 /617 7577 /C /M /L /P /F /TABLE OF H0RI2 /COORDS 1557 1560 1561 1562 1563 1564 1565 1566 1567 1570 1571 1572 1573 1574 1575 1576 1577 1600 1601 1602 1603 1604 1605 1606 1607 1610 1611 1612 1613 1614 0020 0260 0164 0354 0310 0454 0310 0454 0310 0454 0276 0454 0164 0354 0310 0454 0310 0454 0310 0454 0310 0454 0310 0454 0310 0454 0310 0454 0276 0454 HCTA8. 20 260 164 354 /O /D I AL /A/D /MODE /CTRL/H /HALT ALL /HN /HLT INST 310 454 310 454 310 454 276 454 164 354 310 454 310 454 310 454 310 454 310 "T /P /POl ARl TY /F "T r n L, L C C ' /PAUSE /MOOF VW » • 1 Kh /GN r \3\J /S /SFTUP /w /WR r T\T\ I It. i TF /c /CATACAL /M 454 310 454 310 454 276 454 /MAGSPY /L /LOADER wnu r to f\ ti« /P /POL AR T TY /FRrr?r f ~ nC C C. C. /DIAL ENCODED MESSAGE /FORMAT is: /o DIAL / / / / / / 1615 1616 161/ 0604 3604 1101 1620 1443 A/D MODE CTRL/H HN / P / / F / / PAUSE / / / S W GN HALT ALL INSTRUMENTS HALT INSTRUMENT N POLARITY FREEZE MODE GO INSTRUMENT SETUP WRITE TAPE CATACAL MAGSPY LOADER POLARITY FREEZE / c M / / / L P F HLPTAB, TEXT 9FDtDIAL N ft 3733 3733 3733 3733 3733 3734 3734 3734 3734 3734 3734 3734 3734 3734 3734 3734 3734 3734 3734 3734 3735 3735 3735 3735 3735 3735 3735 3735 3735 3735 3735 3736 3736 3736 3736 3736 3736 3736 3737 3737 3737 3737 3737 3737 3740 3740 3740 3740 3740 3740 3740 3741 3741 3741 3741 3741 3741 3741 3741 3741 3741 3742 3742 1621 1622 1623 1624 0601 5704 3615 1704 1625 1626 1627 1630 1631 1632 1633 1634 1635 1636 1637 1640 1641 1642 0543 0324 2214 5710 3610 0114 2440 0114 1440 1116 2324 2225 1505 1624 1643 1644 1645 1646 1647 1650 1651 1652 1653 1654 2343 1016 3610 0114 2440 1116 2324 2225 1505 1624 1655 1656 1657 1660 1661 1662 4016 4320 3620 1714 0122 1124 1663 1664 1665 1666 1667 3143 4006 3606 2205 0532 1670 1671 1672 1673 1674 1675 0543 0620 0125 2305 3615 1704 1676 1677 1700 1701 1702 1703 1704 1705 1706 0543 0716 3607 1740 1116 2324 2225 1505 1624 1707 1710 4016 4323 FA/OtMODE CTRL/HtHALT ALL INSTRUMENTS HNtHALT INSTRUMENT PtPOLARITY FtFREE2E FPAUSEtMODE GNtGO INSTRUMENT N N 3742 3742 3742 3743 3743 3743 3743 3743 3743 3743 3743 3744 3744 3744 3744 3744 3744 3745 3745 3745 3745 3745 3746 3746 3746 3746 3746 3746 3747 3747 3747 3747 3747 3747 3750 3750 3750 3750 3750 3750 3751 3751 3751 3752 3753 3754 3755 3756 3757 3760 3761 3762 3763 3764 3765 3766 3767 3770 3771 3772 3773 3774 3775 1711 1712 3623 0524 1713 1714 1715 1716 1717 1720 1721 2520 4327 3627 2211 2405 4024 0120 1722 1723 1724 1725 1726 0543 0336 0301 2401 0301 1727 1730 1731 1732 1443 1536 1501 0723 1733 1734 1735 1736 1737 2031 4314 3614 1701 0405 1740 1741 1742 1743 1744 2243 2036 2017 1401 2211 1745 1746 1747 1750 1751 2431 4340 0636 0622 0505 1752 1753 3205 4377 1754 0000 StSETUP WtWRITE TAPE CtCATACAL MtMAGSPY LtLOADER PtPOLARITY FtFREE2E ?9 AAASl, 0 /QANDA AND SETUP ROUTINES SEGMNT 2 QAFLO-4000 *1 /ONCE ONLY 0001 0002 0003 0004 0005 0006 0007 1020 0010 0001 0707 0270 0603 7001 AXO CHK 270 LIF 3 JMP MEMCHK 0015 0016 0017 0020 0021 0022 0643 0721 7300 6023 0440 7066 *15 LDF 3 RCG 7300 START, JMP SETUP CHKSNS, SNS 0 JMP QARFSH LDA I EXTMTP DIAL, I /NO PAUSE /DETERMINE /CORE SIZE /RTN TO SETUP /RESTART /DIAL /INIT SETUP /ON SSW0=1 3777 4000 4001 4002 4003 4004 4005 4006 4007 4010 4011 4012 4013 4014 4015 4016 4017 4020 4021 4022 4023 4024 4025 4026 4027 4030 4031 4032 4033 4034 4035 4036 4037 4040 4041 4042 4043 4044 4045 4046 4047 4050 4051 4052 4053 4054 4055 4056 4057 4060 4061 4062 4063 4064 4065 4066 4067 4070 4071 4072 4073 4074 SETUP. 0023 0002 4024 4025 4763 6141 0026 0027 0030 0031 0032 0033 0034 0035 0036 0037 0040 0041 0042 7013 0535 0524 6021 1300 4524 1420 6100 6344 1460 0062 6026 0002 MESSl, 4043 4044 4045 4764 4773 6141 MESS2, POP PMODE JMS I KFRSTR LINC LMODE JMP QAINIT TXTl ANSWER JMP CHKSNS LDH /INIT ALL /DSC /PARAM INPUT /DO /I LINC TAPE /2 KEYBOARD ANSWER+HBIT SHO I 6100 JMP READ SAE I 62 JMP MESSl POP PMODE JMS I KRESTR JMS I KLOHI LINC LMODE JMP QAINIT TXT2 ANSWER JMP CHKSNS SET ANSPTR ANSWER+1 LDH ANSWEK+HBIT 0046 0047 0050 0051 0052 0053 0054 0055 0056 0057 0060 0061 0062 0063 0064 7013 0565 0524 6021 0074 0525 1300 4524 1420 6100 6073 1460 0062 6046 0002 4065 4066 4067 4070 4071 4072 7200 1422 7450 5765 2022 5276 0073 0074 0075 1020 4000 0002 SETANA, 4076 3410 AlCONT. DCA 4077 2052 4100 4463 4101 4102 4103 5243 5305 4766 4104 4105 5300 4767 REMS2, /READ /YES ? /KEYBRD ? /NO ERROR /INIT ARCS FOR /DEV K /DSC /INST K IS /(IsANA. 2=ENC) /ST PNT ^mm^n /TOT PT /SAM FREQ I SHD 6100 JMP SETANA SAE I /CHK ANA OR /ENC I 62 JMP REMS2 PDF /ANALOG /YES ? /ENCODED ? /NO ERROR FMODE CLA TAD SNA JMP I ENCPTR KERENC ENCPTR JMP AlCONT LMODE I IS2 LDA /ANY MORE /ENCODERS ? /NO ENC ERROR /SET FOR NXT I ANAVAL POP PMODE I INIPTR IS2 CNTR A2L0P, JMS I KDIG JMP MESS2 JMP A2C0NT JMS I KDSCL4 A2C0NT, JMP A2L0P JMS I KUPACK /SELECT WD TO /INIT TABLE /UP DV CNT /X COORD DV K /GET 1 DIGIT /FROM OA FLO /INPUT ERROR /DONE QA FLD /I BCD VAL IS /AC SCALE AND /PACK IN DAC /UNPACK AND PUT 407b 4076 4077 4100 4101 4102 4103 4104 410b 4106 4107 4110 4111 4112 4113 4114 4115 4116 4117 4120 4121 4122 4123 4124 412b 4126 4127 4130 4131 4132 4133 4134 4135 4136 4137 4140 4141 4142 4143 4144 4145 4146 4147 4150 4151 4152 4153 4154 4155 4156 4157 4160 4161 4162 4163 4164 4165 4166 4167 4170 4171 4172 4173 4106 4107 4110 4111 4463 5243 5313 4464 A3L0P* 4112 4113 4114 4115 4116 4117 4120 4121 4122 4123 4124 412 5 4126 4127 4130 4131 4132 4133 4134 4135 4136 4137 4140 4141 4142 4143 4144 4145 4146 4147 4150 5306 7200 1044 7640 5322 1045 7650 5770 1021 3046 1020 3047 4437 1044 3021 1045 3020 4771 1044 3410 1045 3410 1044 3023 i045 3024 4774 1044 3410 1045 3410 JMP A3L0P A3C0NTi CLA TAD OBLLO SZA CLA JMP NOT0 TAD DBLHI SNA CLA JMP I KER0PT NOT0, TAO CURNLO DCA ARGLO TAD CURNHI DCA ARGHI JMS I KOAOD TAD DBLLO OCA CURNLO TAO DBLHI DCA CURNHI JMS KOCIA TAD OBLLO DCA INIPTR TAD DBLHI DCA INIPTR TAD OBLLO OCA OUEIN TAO DBLHI DCA QUEOUT JMS KPIOAC TAD DBLLO OCA I INIPTR TAO OBLHl OCA I INIPTR 4151 4152 4153 4154 4155 1032 3047 7040 3046 4437 TAD MAXCOF DCA ARGHI CMA DCA ARGLO JMS I KOAOD 4156 4157 4160 4161 4162 4163 4164 4165 4166 4167 4170 4171 41/2 4173 4174 7420 5762 SNL JMP I KCONMS JMS I KERFUL JMP MESS2 /CHK FOR /NO POINTS /ERR 0 PTS /GET ST ADDR /NXT DV /=TOT PTS+ /ST ADDR DV K /SAVE NXT SA I /2S COM OAC I /-^SA ADDR /NEXT DEV I /SAVE FOR /GBLK SR I 47 72 5243 4200 3200 3233 4303 3043 3055 4311 3030 4317 3406 3400 JHS I KOIG JHP MESS2 JMP A3C0NT JMS I KMUL10 /IN TABLE /TOTAL POINTS /GET 1 DIGIT /INPUT ERROR /DONE QA FLO /DECIMAL TO /OCTAL OVERT /ANSWER IN OAC KCONMS, KFRSTR, KRESTR, KERENCf KDSCL4, KUPACKi KEH0PTi KOCIA, KERFUL. KLOHI, KPIOAC, C0NMS2 FRSTR RESTR ERRENC DSCL4 UPACK ERR0PT DCIA ERRFUL LOHI PIDAC •QAFLO*200 /i»ENO ADDR /DEV K /CHK FOR /BUFFER FULL /IF -END ADR IS /GT BUF LEN /BUF IS EXCEDED /IS OAC » ? /YES BUF ERROR 4174 4175 4176 4177 4^00 4201 4202 4203 4204 4205 4206 4207 4210 4211 4212 4213 4214 4215 4216 4217 4220 4221 4222 4223 4224 4225 4226 4227 4230 4231 4232 4233 4234 4235 4236 4237 4240 4241 4242 4243 4244 4245 4246 4247 4250 TAD 08LL0 S2A CLA JMP 0K2 TAD 08LHI S2A CLA JMP 0K2 CMA DCA STATUS 0K2i DCA D8LL0 A4, JMS 1 KDIG JMP I KMESS2 JMP A4C0NT JMS I KMULiiS JHP A4 A4C0NT, CLA TAD DBLLO TAD NE:G12 SMA S2A CLA JMP ERFREQ TAD DBLLO SNA 4227 4230 4231 4232 4233 4234 4235 4236 1044 7640 5207 1045 7640 5207 7040 3026 3044 4463 5700 5216 4464 5211 7200 1044 1301 7740 5327 1044 7450 7001 7041 3050 1050 3410 1050 3410 1050 3410 6141 0237 0240 0241 0242 0243 0244 0245 0246 0247 0250 0251 0252 0253 7013 0650 0524 6021 1300 4524 1420 6200 6270 1460 0061 6237 0002 MESS3, 4254 4255 4256 4257 4260 7200 1052 1061 7650 5335 CLA TAD TAD SNA JMP 42 61 4262 4263 4264 4265 4266 1026 7700 5266 4317 5236 4677 TAD SMA JMP JMS JMP JMS ERRFUL MESS3-1 KNXSTR I 4267 5700 JMP I 4200 4201 4202 4203 4204 4205 4206 4207 4210 4211 4212 4213 4214 4215 4216 4217 4220 4221 4222 4223 4224 4225 42 26 C0NMS2, I /SWITCH /7777=FULL /ITS FULL /SAH FREQ /I DIGIT /INPUT ERROR /DONE QA FLD /DEC TO OCT /CHK GT 10 /ERROR FREQ /SET 0=1 AC CIA DCA TEMPLO TAD TEMPLO DCA I INIPTR TAD TEMPLO DCA INIPTR TAD TEMPLO DCA I INIPTR LINC LHODE JMP QAINIT /• FREQ TO TAB I TXT3 ANSWER JMP CHKSNS LOH ANSWER^HBIT SHD I 6200 JMP ALLDUN SAE I 61 JMP MESS3 POP PMODE 42t?l 4252 4253 4254 4255 4256 4257 4260 4261 4262 4263 4264 4265 Oi ^ 4266 4267 4270 4271 4272 /SET BUFF FULL OKI, CNTR MAXOVN /DSC /DO /I MORE INSTS /2 START /START /YES ? /MORE DVS /NO ERROR 7 /CHK FOR NO /MORE DEVICES /=NUM DEFINED /s-NUM ALLOWED CLA ERRDEV /ERROR NO MORE /DEVICES STATUS /CHK FOR NO /MORE PTS CLA OKI jf KMESS2 /NONE LEFT FOR /NEXT DEV /SET ARGS FOR /DEVICE K*l /DO IT ALL /OVER AGAIN 0270 1020 LMODE ALLDUN, LDA I ^276 4274 4275 4276 4277 4300 4301 4302 4303 4304 4305 4306 4307 4310 4311 4312 4313 4314 4315 4316 4317 4320 4321 4322 4323 4324 4325 4326 4327 4330 4331 4332 4333 4334 4335 4336 4337 4340 4341 4342 4343 4344 4345 4346 4347 4350 4351 4352 4353 4354 4355 4356 4357 4360 4361 4362 4363 4364 4365 4366 4367 4370 4371 0271 0272 0273 0020 0004 0002 4274 4275 4276 4277 4300 4 301 4302 4303 4702 5676 3312 3255 4043 7766 3430 6141 0304 0305 0306 0307 0310 0311 0312 0313 0314 0315 0316 031/ 0320 0321 0322 0323 0324 0325 7013 1006 0000 6021 6046 6141 7013 0757 0000 6021 6042 0000 6141 7013 0765 0000 6021 0002 4326 5/17 0327 0330 0331 0332 0333 0334 0335 0336 0337 0340 0341 0342 0343 0344 0345 0346 0347 0350 0351 0352 6141 7013 0774 0000 6021 6042 6141 7013 1001 0000 6021 6237 6141 7013 0705 0524 6021 0074 0524 0002 4353 4354 5754 1664 4400 6002 4401 4402 4403 1507 7041 6141 20 /I\0 PRESET ESF POP PMODE JMS KGBLK JMP .I ! /GET BLK CNT I KNXSTR* KMESS2, NEG12i KGBLKi ERRENCi QADUN NXSTR MESS2 -12 GBLK LING LMOOE JHP QAINIT TXTi4 /OSC /ERR ENC 0 JMP CHKSNS REMS2 ERR0PTi 6141 JMP QAINIT TXT10 JMP /LINC /DSC /ERR 0 PTS 0 JMP CHKSNS JMP MESS2»1 ERRFULi 0 6141 JMP QAINIT TXTll /LINC /DSC /ERR BUF FULL 0 JMP CHKSNS POP PMODE JMP ERRFUL LMOOE ERFREQ* 6141 JMP QAINIT TXT12 FREE, 0 JMP CHKSNS JMP MESS2.1 ERRDEVi 6141 JMP QAINIT TXT13 I /OSC /ERR FREQ /OSC /ERR DEV 0 READ, JMP CHKSNS JMP MESS3 6141 JMP QAINIT TXT5 ANSWER JMP CHKSNS SET ANSPTR /LINC /OSC /READ TBLK /UNIT - I ANSWER POP PMODE JMP I DQROC PAGE WRIT, lOF TAD I KBLKCT CIA LINC /IGNORE KBRO /DURING WRITE /-NUM TO DO 4372 4373 4374 4375 4376 4377 4400 4401 4402 4403 4404 4405 4406 4407 4410 4411 4412 4413 4414 4415 4416 4417 4420 4421 4422 4423 4424 4425 4426 4427 4430 4431 4432 4433 4434 4435 4436 4437 4440 4441 4442 4443 4444 4445 4446 4447 4450 4451 4452 4453 4454 4455 4456 4457 4460 4461 4462 4463 4464 4465 4466 4467 4470 0404 0405 0406 0407 0410 0411 0 412 0413 0414 0415 0416 0417 0420 0421 0422 0423 0424 0425 0426 0427 0430 0431 0432 0433 0434 0435 0436 0437 0440 0441 0442 0443 0444 0445 0446 0447 0450 0451 LHODE SIC FREE SET I ANSPTR TXT6+3 ADD FREE ROR 6 4332 0074 0723 2332 0306 1560 7770 2513 1374 1000 0332 0303 1560 7770 2513 1374 1000 0332 1560 7770 2513 1374 0643 7013 0672 2005 7066 1020 0040 1340 2005 7013 0720 0524 7066 0074 0524 0002 ecu 7770 ADD PL60 STH I ANSPTR LDA FREE ROR 3 BCL 7770 ADD PL60 STH I ANSPTR LDA FREE BCL I 7770 ADD PL60 STH ANSPTR LDF 3 JMP QAINIT TXT4 I /PUT TBLK /NUM (3 DIGITS) /IN QANDA TEXT /AT TXT6*3i /TXT6'^4, /AND TXT6*5 I I /EXP NAME ANS442000 JMP OARFSH LDA I 40 STH ANS4+2000 JMP QAINIT JXJ6 ANSWER JMP QARFSH SET ANSPTR ANSWER I /PATCH SPACE /AROUND NAME /FOR MAGSPY /DSC /WRITE /TBLKS /IST TBLK /UNIT - — PDF RHODE 4452 4453 5653 1746 0454 0455 0456 0457 0460 0461 0462 0463 0464 0465 0466 0467 0470 0471 0472 0473 0474 0475 0476 0477 7013 0747 0524 7066 1300 4524 0470 6454 0600 7525 0000 6141 1334 1420 7400 6517 0470 6470 1420 3400 JMP LOAD* I .*! OOWRC LMODE JMP QAINIT TXT7 ANSWER JMP QARFSH /DSC /LOAD /UNIT • LDH ANSWER*HBIT A2E I JMP LOAD LIF 0 JMP KLOAO DIGCHK, DLQOP, /CHK NUMERIC 6141 /INPUT /FROM QA FLO LDH I ANSPTR SHD 1 QAEOLl JMP EOLXIT-QAFLD A2E I /BLANK INPUT /YES IGNORE JMP DLOOP SHD QAEOMl 0 I ? 4471 4472 4473 4474 4475 4476 4477 4500 4501 4502 4503 4504 4505 4506 4507 4510 4511 4512 4513 4514 4^15 4516 4517 45^0 0500 0501 0502 0503 0504 6517 1120 7720 0451 6522 0505 0506 0507 0510 0511 0512 0513 0514 1120 7765 0471 6522 1314 1560 0060 0002 4515 4516 4517 4520 4521 452^ 4523 2266 7410 0002 2266 7410 0002 5666 UPLIM, PL60, RHODE ISiZ OIGCHK 4::)21 4:?22 16 EOLXITi ERRXIT, 2 JHP ANSWER, 0000 IS I DIGCHK /P*l IS ERR /RTN 0000 0000 4:?v>ii; fc53i i^532 k>533 VS534 4::>ol i6:>3P 4^01 0 0 i^002 0 0 0 0 0620 0122 ^iip 0:>24 4:?^51 4:>3l 4::>31 ^:>^^ 0P22 4011 1620 TXTl, 4:^31 TEXT ?FPARAMETER INPUT 2;P24 4i)v32 4306 ic.4i7 F00<1 4:>o2 4:>^o 74oi 4v)06 4:^3.; it/p :>! 1 11 4 :>oo 4 J>0v: /^:>p4 ^iOc:4 0120 ^C0 Fl LING TAPE 4 Ji'w si «.043 4^*0 i 4 ::>o ~ 4 • s w~ 4:>c4 J^O-^ *i/Q02 4^13 16 P 5 i6:?6o «:.:>i>4 0I22 ^434 F2 KEYBOAROX? 4;>o*^ 4pw-. 4 :>o^ >0 1623 2422 NORMAL /POP /P*2 IS EOL 0 0 p2 6 ji53i6 4:><:7 2 ISZ DIGCHK SKP 0527 4:>2o /P4«3 SKP LMODE 05^:4 (b525 4^25 JMP EOLXIT-QAFLD ADA I -57 APO /OIGIT ? JMP ERRXIT-QAFLD/NO ILLEGAL /INPUT ADA I •12 /«10 OR «12 APO I /DIGIT ? JMP ERRXIT-QAFLD LOH ANSPTR 8CL I /PUT DIGIT 60 /IN AC POP TXT2, TEXT ?FINSTRUMENT XY IS<1 4 :>o6 4i>37 ,66UU <fi(^^k> 4::>o7 ;>:606 7!pi<:}i 4::>o7 /)604 4po7 )^62;t? 4::>o7 Z62)6 k:i7p4 4::»o/ ^^52)7 4iiJ6<£ 4:>o7 4^v>7 Itl'i^ 7:?t'Z> ^oo'/ ttlZ IzX^ iJ^k>4 Z61^ :>143 4::»o/ 1417 17k:/4 ^-o7 4^^^L :^ w 4^^u> 4 -t 4 4 lir <lsANALOGi 2»ENC00ED) V - u0 0 t;6i<> »y 6 1 7 (i4i£>i oc1 7 4 iu !fi. <: 4 ^O'-^ij iL^OiiJ 1116 4:;>'7^ i^^jc-^ «i4 7:^ FSTARTING P0INTr<5 4:^^^ 4i?4i iL/OiiO 4Jk:/6 4b41 i66<£7 ^:4i7 4!?41 4!j41 0631 1440 4541 4^41 1^632 tS633 4:?41 4!?41 ^i>41 16635 4542 4542 4542 4542 't.*^^! 0634 21317 1116 2423 7574 FTOTAL P01NTS5<5 0636 0637 064b^ 6543 0623 0115 2014 1116 4::>42 ^641 0642 0643 4^42 .6644 4:>42 0645 0622 0521 4dv2 0647 6234 HZ^'-tb 0650 4::>4^ 06;>1 0604 1774 4:p42 0 740 FSAHPLING FREQ8<2\? ^-^'^ ^^^0 4v^4 TXT3, 6143 06p£i 06pvi *i^66l .6o:?4 4015 172^1 4^4^ ^65:p 00:^6 4::>44 itof liio 45':-.- 4:?4^ 4:>^4 tt'540 TEXT ?F00<1 160 OU 6:3^4 16661 i666ki 45?44 4544 4545 4545 4545 4545 4545 4545 4545 4546 4546 4546 4546 4546 4546 4546 4546 4547 4547 4547 4547 4547 4550 4550 4550 4550 4550 4550 4551 4551 4551 4551 4551 4551 4551 4552 4552 4552 4552 4552 4552 4552 4552 4552 4552 4552 4553 4553 4553 4553 4553 4553 4553 4553 4553 4554 4554 4554 4554 4554 0663 lo24 0664 0665 0666 0667 0670 0671 2343 0662 4023 2401 2224 3400 0672 0673 0674 0675 0676 0677 0700 0605 3020 0522 1115 0516 2440 1601 0701 0702 0703 0704 1505 4306 7470 3400 0705 0706 0707 0710 0711 0622 0501 0440 2402 1413 0712 0713 0714 0715 0716 0717 7463 4306 2516 1124 7461 3400 0720 0721 0722 0723 0724 0725 0726 0727 0730 0731 0627 2211 2405 4030 3132 4050 1703 2451 4024 0214 0732 0733 0734 0735 0736 0737 0740 0741 13-23 4306 0611 2223 2440 2402 1413 7574 0742 0743 0744 0745 0746 6343 0625 1611 2474 6134 Fl MORE INSTRUMENTS F2 STARTS? TXT4, TEXT 7FEXPERIMENT NAME F<8\? TXT5, TEXT 7FREA0 TBl.K<3 FUN1T<1\? TXT6, TEXT 7FWRITE XYi (OCT) TBLKS FFIRST TBLK«<3 4554 4555 4555 4555 4555 4556 45 56 4 55 6 4556 4556 4556 4557 4557 4557 4557 4557 4557 4557 4560 4560 4560 4560 4560 4560 4560 4560 4561 4561 4561 4561 4561 4561 4562 4562 4562 4562 4562 4562 4563 4563 4563 4563 4563 4563 4564 5530 5531 5532 5533 5534 5535 5536 5537 5540 5541 5542 5543 5544 5545 5546 5547 5550 5S>51 FUNIT<1\? 0747 0750 0751 0614 1701 0474 0752 0753 0754 0755 0756 7043 0625 1611 2474 6134 0757 0760 0761 0762 0763 0764 0605 2222 4060 4020 2423 3400 0765 0766 0767 0770 0771 0772 0773 0605 2222 4002 2506 4006 2514 1434 0774 0775 0776 0777 1000 0605 2222 4006 2205 2134 1001 1002 1003 1004 1005 0605 2222 4011 1623 2434 1006 1007 1010 1011 1012 0605 2222 4005 1603 3400 TXT7, TEXT ?FL0AD<8 rUNIT<l\? 1701 0000 TXT10, TEXT ?FERR TXTll, TEXT ?FERR BUF FULLN? TXT12, TEXT ?FERR FREQ\? TXT13, TEXT ?FERR INSTS? TXT14, TEXT ?FERR ENC\? NOLIST AAAS2» 0 SEGMNT 0 PTS\? 3 ^1 0001 0002 0003 0004 0005 0006 0007 0010 0011 0012 0013 0014 0015 4040 4040 4040 4040 0000 0000 0000 0000 0000 4040 4040 4040 4040 FIRST, ANS4, 4040 4040 4040 4040 /SPACE FmT /AROUND NAME /FOR MAGSPY 0 /EXPERIMENT /NAME 0 0 0 0 4040 4040 4040 4040 PMODE /INITIALISATION TABLE FILLED BY 5t?52 5554 5555 5556 5557 5560 !?56i 5562 5563 5564 5565 5566 5567 5570 5571 5572 5573 5574 5575 5576 5577 5600 5601 5602 5603 5604 5605 5606 5607 5610 5611 5612 5613 5614 5615 5616 5617 5620 5621 5622 5623 5624 5625 5626 5627 5630 5631 5632 5633 5634 5635 5636 5637 5640 5641 5642 5643 5644 5645 5646 5647 5650 6016 6017 6020 6021 6022 6023 6024 6025 6026 6027 6030 6031 6032 6033 6034 6035 6036 6 03 7 6040 6041 6042 6043 6044 6045 6046 6047 6050 6051 6052 6053 6054 6055 6056 6057 6060 6061 6062 6063 6064 6065 6066 6067 6070 6071 6072 6073 6074 6075 6076 6077 6100 6101 6102 6103 6104 6105 6106 6107 6110 6111 6112 0001 0002 0003 0004 0005 0006 0007 0010 0011 0010 0011 0012 0013 0014 0015 0016 0017 0001 0002 0003 0004 0005 0006 0007 0010 0011 0010 0011 0012 0013 0014 0015 0016 0017 0001 0002 0003 0004 0005 0006 0007 0010 0011 0010 0011 0012 0013 0014 0015 0016 0017 0001 0002 0003 0004 0005 0006 0007 0010 0011 0010 /SETUP AND /17 VALUES INISTR# 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 tfc Sat 4 'It k 11 Wf 17 1 4 DEVICES /SA LO /SA HI /-SA LO /-SA HI /SELECT WORD /X COORD IS /10S /100S /1000S /10000S /-SA LO NXT DV /-SA HI NXT DV /-(EA LO,EA HI) / /-SAM FREQ /-SAM FREQ /-SAM FREQ /DEVICE 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 2 3 /DEVICE 2 /DEVICE 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17f lit 1 2 3 4 5 6 7 8 9 10 5651 5652 5653 5654 5655 5656 56D 1 5 66 0 5661 5662 5663 5664 5665 5666 5667 5670 5671 5672 5673 5674 5675 5676 5im 5701 5702 5703 5704 5705 5706 5707 5710 5711 5712 5713 5714 5715 5716 5717 5720 5721 5722 5723 5724 5725 5726 5727 5730 5731 5732 5733 5734 5735 5736 5737 5740 5741 5742 5743 5744 5745 5746 5747 6113 6114 6115 6116 6117 6120 6121 6122 6123 6124 6125 6126 6127 6130 6131 6132 6133 6134 6135 6136 6137 6140 6141 6142 6143 6144 6145 6146 6147 6150 6151 6152 6153 6154 6155 6156 6157 6160 6161 6162 6163 6164 6165 6166 6167 6170 6171 6172 6173 6174 6175 6176 6177 6200 6201 6202 6203 6204 6205 6206 6207 0011 0012 0013 0014 0015 0016 0017 11 12 13 14 15 16 17 0 001 1 0002 0003 0004 0005 0006 0007 0010 0011 0010 0011 0012 0013 0014 0015 0016 0017 0000 0000 2 6272 6273 6443 6444 6274 6471 6472 6473 6474 6475 6447 6450 0314 0315 6275 6276 6445 6277 6300 6447 6450 6301 6476 6477 6500 6501 6502 6453 6454 0336 0337 6 3 02 6303 6451 6304 /DEVICE 4 3 4 5 6 7 6 9 10 11 12 13 14 15 16 17 8LKCNT 0 0 LAST, /TABLE OF AODR THAT TELL WHERE /INIT VALS GO TISTR0 INIAD. /DEVICE TISTR0+1 LIMVL0 1 LIHVL0*! TISTR0+2 8CO0 BCO0+1 BCD0+2 8CD0*3 BCD0*4 LIMVLl LIMVLl*! ELOOV0 EHIDV0 TISTR0*3 TISTR0*4 LIMVL0*2 TISTRl TISTRl^l LIMVLl LIMVUI*! TISTRl+2 0 /DEVICE 1 /DEVICE 2 BCOl 8CD1+1 BCD1*2 BCDl+3 BCD1*4 LIMVL2 LIHVL2*! ELOOVl EHIOVl TISTR1*3 TISTR1*4 LIMVL1*2 TISTR2 6210 6211 6212 6213 6214 6215 6216 6217 6220 6221 6222 6223 6224 6225 6226 6227 6230 6231 6232 6233 6234 6235 6236 6237 6240 6241 6242 6243 6244 6245 6246 6247 6250 60s51 6252 6253 6254 6255 6256 6257 6260 6261 6262 6263 6264 6265 6266 6267 6270 6271 6305 6453 6454 6306 6503 6504 6505 6506 6507 6457 6460 0415 0416 6307 6310 6455 6311 6312 6457 6460 6313 6510 6511 6512 6513 6514 6463 6464 0440 0441 6314 6315 6461 6316 6317 6463 6464 6320 6515 6516 6517 6520 6521 6467 6470 0463 0464 6321 6322 6465 6032 6033 6034 6035 6036 6037 6040 6041 6042 6043 6044 6045 6046 6272 6273 6274 6275 6276 6277 6300 6301 6302 6303 6304 0001 0002 0003 0004 0005 0001 0002 0003 0004 0005 0001 5750 57^1 5752 5753 5754 5755 5756 3157 5760 5761 5762 5763 5764 5765 51tt 3767 5770 5771 5772 5773 5774 5775 5776 5777 6000 6001 6002 6003 6004 6005 6006 6007 6010 6011 6012 6013 6014 6015 6016 6017 6020 6021 6022 6023 6024 6025 6026 6027 6030 62!?1 TISTR2*1 IIHVL2 LIMVL2*! TISTR2*2 8C02 8C02*1 8C02*2 BCD2*3 8CD2+4 LIHVL3 LiMVL3*l EL00V2 EHI0V2 TISTR2*3 TISTR2*4 LIMVL2+2 TISTR3 TISTR3«1 LIMVL3 t IMVL3^1 TISTR3*2 8CD3 8CD3*1 BC03+2 8CD3+3 8CD3+4 LIMVL4 /DEVICE 3 LIMVL4H EL0DV3 EHIDV3 TISTR3*3 TISTR3+4 LIMVL3*2 TISTR4 /DEVICE 4 TISTR4*! LIMVL4 LIMVL4*! TISTR4+2 BCD4 8CD4+1 BCD4*2 BCD4«3 BC04*4 LIMVL5 LIMVL5*! EL00V4 EHIDV4 TISTR4+3 TISTR4+4 LIMVL4*2 /TABLE OF VALUES FOR GO ROUTS /5 PER DEVICE TISTR0I 1 /SAUO 2 /SAHI 3 /SELECT WD 4 /^SAM FREQ 5 /-SAH FREQ TISTRl, 1 /OVl 2 3 4 5 TISTR2, 1 /DV2 6047 6305 0002 2 6 05 0 6 30 6 0 00 3 6051 6052 6053 6054 6055 6056 6057 6060 6061 6062 6063 6064 6065 6066 6067 6070 6071 6072 6073 6074 6075 6076 6077 6100 6101 6102 6103 6104 6105 6106 6107 6110 6111 6112 6113 6114 6115 6116 611/ 6120 6121 6122 6123 6124 6125 6126 6127 6130 6131 6132 6133 6134 6135 6136 6137 6140 6141 6142 6143 6144 6145 6307 6310 6311 6312 6313 6314 6315 6316 6317 6320 6321 6322 /0004 3 4 0005 0001 0002 0003 0004 0005 0001 0002 0003 0004 0005 5 TISTR3i /DV3 1 2 3 4 5 TISTR4, 1 2 3 4 5 /TABLE OF ADDR /6 PER DEV CE LODV0 TI AD0I I 6323 63^4 6325 6326 6327 6330 6331 6332 6333 6334 6335 6336 6337 6340 6341 6342 6343 6344 6345 6346 63 4 7 6350 6351 6352 6353 6354 6355 6356 6357 6360 0312 0311 0066 0307 0310 0313 0334 0333 0067 0331 0332 0335 0413 0412 0070 0410 0411 0414 0436 0435 0071 0433 0434 0437 0461 0460 0072 0456 0457 0462 6371 6372 6272 6277 6304 6311 6316 6323 6331 6337 6345 6353 6373 6374 6375 6376 0001 0002 0003 0004 6361 6362 6363 6364 6365 6366 6367 6 37 0 HIDV0 SELOV0 SFDV0 KSFDV0 OSDV0 TI AOl* LOOVl HIDVl SELDVl SFDVl KSFQVi OSDVl L0DV2 TI A02j HIDV2 SELDV2 SF0V2 KSrDV2 0S0V2 TIA03, L0DV3 HIDV3 SEL0V3 SFDV3 KSF0V3 0SDV3 TI AD4, L0DV4 HI0V4 SELDV4 SFDV4 KSFDV4 0SDV4 /ADDR OF START /FOR GO ROUTS VALTAB, TISTR0 TISTRl TISTR2 TISTR3 TI STR4 ADRTABi TI AD0 TI AOl TIAD2 TI AD3 TIA04 /TTY QUE HOLDS STRQUEi 1 2 3 4 6146 6X47 6150 6151 6152 6153 6154 6155 6156 6157 6160 6161 6162 6163 6164 6165 6166 6167 6170 6171 6172 6173 6174 6175 6176 6177 6200 6201 6202 6203 6204 6205 6206 6207 6210 6211 6212 6213 6214 6215 6216 6217 6220 6221 6222 6223 6224 6225 6226 6227 6230 6231 6232 6233 6234 6235 6236 6237 6240 6241 6242 6243 6244 6377 6400 6401 6402 6403 6404 6405 6406 6407 6410 6411 6412 6413 6414 6415 6416 0005 0006 0007 0010 0011 0010 0011 0012 0013 0014 0015 0016 0017 0020 0021 0020 6417 6420 6421 6422 6423 6424 6425 6426 6427 6430 6431 6432 6433 6434 7747 4540 7775 4360 1111 6030 1111 7634 1111 7634 0144 1166 0012 6435 6436 6437 6440 6441 6442 0000 0000 0000 0000 0000 0000 BCDVALi 0 6443 6444 6445 6446 0000 0000 0000 6471 LIMVL0I 6447 6450 6451 6452 6453 6454 6455 6456 6457 6460 6461 0000 0000 0000 6476 0000 0000 0000 6503 LIMVUi 5 6 7 3 9 10 11 12 13 14 15 16 17 18 19 20 ENOQUE, /TABLES FOR SCOPE ROUTINES /POWERS OF TEN /FOR OCTAL TO /DECIMAL /CONVERSION RADVAL, 7747 /«100# 000 4540 7775 /•10#000 4360 7777 /•I, 000 6030 7777 /•100 «rl44 7777 -12 -144 *144 -12 *12 11 tt mm mm mm 0 0 0 0 0 0 0 0 BCO0 0 0 0 BCD! LIMVL2, 0 /•10 /»100 /*100 /»10 /*10 /HOLDS BCD VAL /OF X COORD /100K /10K /IK /100S /10S /UNITS /DEVICE INFO /TABLE FOR /XYGET SETUP /AT QANOA STAGE /«ST ADDR DV0 /LO, HI /a SAM FREQ DV0 /ADOR OF BCD /VAL FOR DEV 0 /DVl ARCS /DV2 ARCS 0 0 8C02 LIMVL3, 0 0 0 /DV3 ARGS 6245 6246 6247 6250 6251 6252 6253 62b4 6 64 62x 6510 6463 ^-,0000 6464 0000 6465 0000 6466 6515 6467 0000 6470 0000 BCD3 LIMVL4, 0 0 8C04 LIMVL5, 0 0 BCD0# 0 0 55 6256 6257 6260 6261 6262 6263 6264 6265 6266 6267 6270 6271 6272 6273 6274 6275 6276 6277 6300 6301 6302 6303 6304 6305 6306 6307 6310 6311 6312 6313 6314 6315 6316 6317 6320 6321 6322 6323 6324 6325 6326 6327 6330 6331 6332 6333 6334 6335 6336 6337 6340 6341 6342 6343 6471 6472 6473 6474 6475 6476 6477 6500 6501 6502 6503 6504 6505 6506 6507 6510 6511 6512 6513 6514 6515 6516 6517 6520 6521 6522 6523 6524 6525 6526 6527 6530 6531 6532 6533 6534 6535 6536 6537 6540 6541 6542 6543 654 4 6545 6546 65 47 6550 6551 6552 6553 0000 0000 ^000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 6567 6573 6577 6603 6607 0310 0301 0314 0324 0240 0311 0316 0323 0324 0322 0325 0315 0305 0316 0324 0240 0000 0307 0317 0240 0311 /DV4 ARCS 0 0 0 0 BCOl 0 0 BCQ2i 0 0 0 0 /IST UNUSED /BUFFER CORE /LOG COMES /RIGHT AFT LAST /USER DEFINED /DEVICE /HOLDS USER /DEFINED INIT /X VALUE /5 DIGITS /I EACH DV /UNITS /TENS /HUNDREDS /THOUSANDS /10 THOUS 0 0 0 BC03« 0 0 0 0 0 0 BCD4, 0 0 0 0 0 NUM0 NUHl, NUM2, NUM3, NUM4 , , MS0 MSI MS2 MS3 MS4 /TISA MESSAGES 310 MSHLTi 301 314 324 240 311 316 323 324 322 325 315 305 316 324 240 0 MSGO, 307 317 240 311 /NUM TAGS /MUST BE /CONTIGUOUS /H /A /L /T /SPACE /I /N /S /T /R /U /M /E /N /T /SPACE /EOM /G /O /SPACE /I 6344 6345 6346 6347 6350 6351 6352 6353 6354 6355 6356 6357 6360 6361 6362 6363 6364 6365 6366 6367 6370 6371 6372 6373 6374 6375 6376 6377 6400 6401 6402 6403 6404 6405 6406 6407 6410 6411 6412 6413 6414 6415 6416 6417 6420 6421 6422 6423 6424 6425 6426 6427 6430 6431 6432 6433 6434 6435 6436 6437 6440 6441 6442 6554 6555 6556 6557 6560 6561 6562 6563 6564 6565 6566 6567 6570 6571 6572 6573 6574 6575 6576 6577 6600 6601 6602 6603 6604 6605 6606 6607 6610 6611 6612 6613 6614 6615 6616 6617 6620 6621 6622 6623 6624 6625 6626 6627 6630 6631 6632 6633 6634 6635 6636 6637 6640 6641 6642 6643 6644 6645 6646 6647 6650 6651 6652 0316 316 323 324 322 325 315 305 316 i5323 0324 0322 0325 0315 0305 0316 0324 0240 0000 0260 0215 0212 0000 0261 0215 0212 0000 0262 0215 0212 0000 0263 0215 0212 0000 0264 0215 0212 32 4 n 240 /SPACE /EDM 0 260 215 212 0 HSli 261 215 212 0 MS2# 262 215 212 MS3, 263 215 212 0 0 MS4, 264 215 212 MSMOT, 315 317 324 311 317 316 215 212 /M /O 0 /EOM 306 322 305 305 332 305 215 212 /F /R /E /E /Z /E mm 0315 0317 0324 0311 0317 0316 0215 0212 0000 0306 0322 0305 0305 0332 0305 0215 0212 0000 0316 0317 0322 0315 0301 0314 0215 0212 0000 0311 0316 0326 0305 0322 /N /S /T /R /U /M /E /N 0 HSFR, /T n /o /N /CR /LF 0 MSNORn 316 317 322 315 301 314 215 212 /N /O /R /M /A /L 0 MSINV, 311 316 326 305 322 /I /N /V /E /R 6443 6 44 4 6445 6446 6447 6450 6451 6452 6453 6454 6455 6456 6457 6460 6461 6462 6463 6464 6465 6466 6467 6470 6471 6472 6473 6474 6475 6476 6477 6500 6501 6502 6503 6504 6505 6506 6507 6510 6511 6512 6513 6514 6515 6516 6517 6520 6521 6522 6523 6524 6525 6526 6527 6530 6531 6532 6533 6534 6535 6536 6537 6540 6541 . 6653 6654 6655 6656 6657 6660 6661 6662 6663 6664 6665 6666 6667 6670 6671 6672 6673 6674 6675 6676 6677 6700 6701 6702 6703 6704 6705 6706 6707 6710 6711 6712 6713 6714 6715 6716 6717 6720 6721 6722 6723 6724 6725 0324 0305 0304 0215 0212 0000 0320 0301 0325 0323 0305 0240 0315 0317 0304 0305 0215 0212 0000 0310 0301 0316 0304 0323 0240 0317 0306 0306 0215 0212 0000 0301 0257 0304 0240 0315 0317 0304 0305 0215 0212 0000 0000 32 4 /T 305 304 215 212 /E /O 0 ALLHLT, 320 301 325 323 305 240 315 317 304 305 215 212 /P /A /U /s /E /SP /M /O /D /E 0 MSBUSY, 310 301 316 304 323 240 317 306 306 215 212 /H /A /N /D /S /o /r /F 0 MSAD, 301 257 304 240 315 317 304 305 215 212 /A // /D /M /o /D /E 0 AAAS3, 0 LMODE <»1000 1000 1001 1002 1003 1004 1005 1006 1007 1010 1011 1012 1013 1014 1015 1016 1017 0004 0640 1020 0640 1040 2000 1040 1013 3000 1040 1013 0000 1040 2000 1000 2000 P4, MEMCNK, LOOPi 4 LOF 0 IDA I LOF 0 STA 2000 STA NLOF ADO P4 STA NLDF /FIND OUT HOW /MUCH EXT HEM /PUT ANYTHING /EXCEPT LOF K /IN LDF 0 /SET LDF /INST /PUT LDF K /K«4,10i .•,•34 /IN LOC NLOF 0 STA 2000 LOA 2000 /PUT LDF K /IN LDF K /GET IT /BACK 6b42 6543 6544 6545 6546 6547 6550 6551 6552 6553 6554 6555 6556 6557 6560 6561 6562 6563 6564 6565 6566 6567 6570 6571 6572 6573 6574 6575 6576 6577 6600 6601 6602 6603 6604 6605 6606 6607 6610 6611 6612 6613 6614 6615 6616 6617 6620 6621 6622 6623 6624 6625 6626 6627 6630 6631 66 32 6633 6634 6635 6636 6637 6640 1020 1021 1022 1023 1024 1025 1026 1027 1030 1031 1032 1033 1034 1035 1036 1440 1013 7035 0640 1440 2000 0467 7035 1460 0674 7010 3000 5013 1000 1013 1037 1040 1041 1042 1043 1044 1045 1046 1120 7137 0302 1120 7776 0470 0011 0002 7047 7050 7051 7052 7053 7054 7055 7056 6201 3032 1255 3656 5654 4023 4040 6000 SAE NLDF /DID WE /MAKE IT JMP DUN LOT 0 SAE /NO /CHK FOR /CONTROL LOGIC /ONLY /STILL OK /4K ONLY /CHK FOR 2000 SKP JMP DUN SAE lOF 34 JMP LOOP ADO P4 STC NLOF LOA NLDF I OUNi /MAX CORE /DO SOME MORE /WE HAVE 32K /PUT FIRST NON /EX STAN T L DF /IN AC ! ADA I -640 ROR 2 ADA I •1 A2E ? /wlST NON CDr I CLR POP PMOOE CDF 0 DCA M AXCDF TAD P4040 DCA ! K6K /FIXUP 6000 JMP I ,*1 SETUP P4040, 4040 K6K, 6000 /DEFINITIONS FOR INPUT ROUTINES ADRM INS7000 /IST BUF ADOR CDFMIN«0 DRPHAXS20 WRMBLK»4000 /MAX X AX DROP /IST MBLK FOR /WR TE F RLDF^643 /IST BUF LDF RDH8LK®6000 /IST MBLK FOR /READ /ANALOG ASSIGNMENTS FOR DE VI CES /X AXIS I I XAXDV0»10 XAXOVloX AXOV0*! XAXDV20XAXDV1+1 XAXDV38XAXDV2+1 XAXOV4s20 /Y AXIS YAXOV0"14 YAXDV1«YAXDV0+1 YAXDV2»YAX0V1*1 YAXDV38YAXDV2*! YAX0V4 »2 4 /DEFINITIONS FOR SCOPE ROUT NES CHGHC=3600 /CHANGE H0RI2 /COORD CRS0043 /EOL RH CR1»4300 /EOL LH ENDWO»0077 /END OF MESS ENOWD1«7700 /END OF MESS FUL«0006 /FULL SIE CHARS 1 I 6641 6642 6643 6644 6645 6646 6647 6650 6651 6652 6653 6654 6655 6656 6657 6660 6661 6662 6663 6664 6665 6666 6667 6670 6671 6672 6673 6674 6675 6676 6677 i FUL1«0600 GRDPTRS14 GROTAB«QAV HeiTc4000 HCPTRal5 /PTR TO GRID /TABLE /ADDR OF GRID /TABLE /PTR TO TABLE /HORIZ COORDS /- LENGTH OF KURLEN8-30 /CURSOR HSPTR»i7 /»XCORD /PTR TO DIAL /ENCODED MESS VCPTRal6 /PTR TO TABLE /VERT COORDS XCURHI»ARGH1 /PAGE 0 XCURLOsARGLO /PAGE 0 XYHCS0 /INIT HORIZ /COORD FOR /X-Y DISP /DEFINITIONS FOR QANDA SETUP ROUTINES ANAVAL»4000 /ANALOG SELECT ANSPTR«14 CURNNI sADMESS /PAGE 0 CURNLOkKBDBUF /PAGE 0 DVNMAX»»5 ENCPTR'TTYFLG /PAGE 0 EXTMTPai0 /XOB CONSTANT QAEOL1»7400 QAEOM1»3400 /TISA 15 APR 70 0000 ERRORS AAAP0 AAAS0 AAASl AAAS2 AAAS3 ADOR AOMESS AOMS ADPTR ADRHIN ADRTAB AGOMS AHLTMS AllDUN ALLHLT ANALOG ANARTN ANAVAL ANLOF ANLIF ;NONO 0111 1765 3754 5701 6725 0730 00:^^0 1504 0011 7000 6366 3515 3514 4270 6661 0702 0637 4000 0347 0346 1653 KiC 1741 ANSPTK 0014 ANSWER 4524 6005 ANS4 0047 ARGHI ARGLO 0046 ASAM 1513 ASAVE 0352 . ATEMP AWRI AlCONT A2C0NT A2L0P A3C0NT A3L0P A4 A4C0NT BCDLOP BCOPTR SGDVAL 8CO0 BCOl 8C02 8C03 BC04 BCNTR BETAl BETA2 BETA3 BLKCNT 8UFHI BUFLO BUFPTR BUSYMS BWDMOT BYHLT 8YM8LK BYWRAP C CATA CATPTK CDFHIN CDFVAL COF0 CHAR CHGHC CHGSAM CHKADR CHKLOP CHKSNS CHKSWI CHKTTY CHRLOP CHRNXT CHRPTR CHRTAB CLKCNT CLKMOD CLRLOP CNTR C0NMS2 CR CRl CTRLH CURCOF CURCNT CUROIS CURLEN CURLOP CURNHI CURNLO 1506 1762 4076 4105 4100 4113 4106 4211 4216 2600 0056 6435 6471 6476 6503 6510 6515 0053 0003 0004 0005 6143 2347 2346 0054 1063 2224 3123 1137 2316 1342 1517 1576 0000 0731 0031 1265 3600 0720 2233 3114 4021 3107 0245 1210 2075 1224 1223 3304 3305 3206 0052 4200 0043 4300 1274 0060 2351 2700 2751 2722 0020 0021 CURK TN D DADD 08L0EF DBLHI DBLLO obllop DC I A 2275 0473 2330 2470 0045 0044 2461 3030 3527 3534 0036 40i5 4466 OCODEX ^ y DCODt DEVNUM DIAL 0I6CHK DLOOP 44 70 DOHTP 1067 DORD C 166 4 DOWRC 174 6 ORPM A X 0020 DSCCHR 2732 OSCHLP 2052 DSCL 3017 3043 DSCL4 DSCX Y 2122 DUN 7035 DUN3LK 1632 D VNMAX 7/73 DVT YP 0027 0 VI 0321 r\ <^ r\ \j o u V2 r\ V/ 0423 DVo 04 46 EH ID V0 0315 EH I D VI 0337 EHI DV2 04 i6 DV4 EHIDV3 0441 EHI DV4 0464 ELODV0 0314 ELOD VI 0336 ELOD V3 0 415 0 44 0 EL 00 V4 0 4 63 EL OD E NCPT R 0022 ENCV AL 3306 ENDHI 0733 ENDLO 0732 ENDQUE 6416 ENDWD 0077 ENDWDi 7700 ENQUE 1065 4517 EOL XI ERFREQ 4327 ERRDEV 4335 ERRENC 4303 ERRFUL 4317 ERRX T 4522 ERR0PT 4311 EXIT 0472 EXTMTP 0010 F 0514 FIHLDF 0643 FIRST 6001 FOUND 2432 FREE 4332 I FREE2E FREQ FRMS FROM FRSTR FUL FULl FWOCOF FHDRTN G GBLK GETKBD GETU GO GODIS GOLOP GQMS GOODY GROPTR GRDTAB GSWIT H HALT HALTAL H8IT HCPTH HCTA8 HIDV0 HIOVl HIDV2 HIDV3 HIDV4 HLPTAB HLTALL HLTDV0 HLTOVl HLT0V2 HLTDV3 HLT0V4 HLTLOP HLTHS HLTPTR HOLD HSWIT HSWIT0 HSWITl HSWIT2 HSWI T3 HSWIT4 HSWPTR IDLE INIAD INICHH INIEND INILEN INIPTR INISAM INISTR INMESS INPUT INTL INTMOD INTOUT 2040 073t> 0542 1510 3200 0006 0600 2303 2300 1315 3430 5534 1542 1411 2251 1451 3507 1124 0014 5331 1365 1311 1400 3516 4000 0015 3557 0311 0333 0412 0435 0460 3615 1363 0317 0341 0420 0443 0466 3475 3461 lbl6 0736 1364 0073 0074 0075 0076 0077 3130 2020 6145 2137 6036 3273 0010 1464 6016 1044 0600 0200 0345 0256 MTP NVMS KAOR K8C0 0230 KGSL K KGO KgOHS KHALT 4 302 I 0b44 3303 2526 KB08UF 0021 K80TAB 122t> KBtKCT 0107 KCLEN 0062 KCONMS 4162 KCUR 2352 1271 KO KOAOO 0037 4171 KDCI A 0063 KDIG KOOMTP 1763 KDSCL4 4166 KDV2 0353 KENC 3277 KERENC 4165 KERFUL 4172 KER0PT 4170 KEY8RD 1200 KE YKTN 0511 KEYX IT 1505 1270 KF KFIRST 174(3 KFREO 0537 KFREQ 0734 KFRESH 1745 KFRSTR 4163 I 1370 0102 1366 KHLTMS 0101 KIDLE 0065 K INI 0106 K NPUT 0030 KKOC A 3427 2047 KKEY KlAST 0110 KLIH 2525 KLOAD 1525 4173 KLOHI 2050 KMES KMESS2 4300 KMULlti^ 0064 KNUM 3526 f XSTR 4277 KP 1267 < *OLAR 0540 KPIDAC 4174 KQUPUT 0105 KR O 2527 KROERf 1737 KRESTR 4164 KS 1272 KSET ?272 KSETUP i545 KSrOV0 0310 KSFOVl 0352 KSFDV2 0411 KSFOVL 0434 I I f KSFDV4 04t?7 KSTRQ Z667 20bl KSWI 3^6b KTTY KTXT26 3302 KUPACK 4167 KUPLIM 1661 KURLEN 7750 1273 KW KWRERR 1764 KWRIT 0546 KXYGET 2353 3366 K210 7056 K6K 1354 L 6144 LAST LDFSTR 1172 LIMLOP 2407 LIHPTR 0055 LIMVL0 6443 LIMVLl 6447 LIMVL2 6453 LIMVL3 6457 LIMVL4 6463 LIHVL5 6467 LNNXT 2061 4454 LOAD LOADER 1550 LODLOP 1532 LODPTR 1610 LOOV0 0312 LODVl 0334 L0DV2 0413 L00V3 0436 L00V4 0461 3406 LOHI 7010 LOOP 3326 LOPl 3330 L0P2 LSAVE 0351 LSENC 3300 3276 LSINI LSSAHI 3275 LSSALO 3274 M 1347 MAG 1522 MAGPTH 1603 MATCH 1220 MAXCDF 0032 MAXCUR 2752 MAXORP 0724 MAXDVN 0061 MEMCHK 7001 MESCHK 1000 MESSl 4026 MESS2 4043 MESS3 4237 MINADR 0034 MINCDF 0033 MM12 1657 MM4 2756 MODE 0103 MOTMS 0541 6712 HSAD MS8USV 6676 6624 MSFR MS GO 6i>5 0 MSHlT HSINV MSMOT HSHOR MSPTR MS0 HSl MS2 MS3 6527 6646 6613 6635 0017 6bb7 6573 6577 6603 6607 1100 3000 1660 2350 2753 1514 4301 2530 0725 0673 7013 0543 4122 1321 3517 6522 6523 6524 6525 6526 3255 2152 2131 2261 4266 4207 0727 1203 0313 0335 0414 0437 0462 0266 0500 MS4 MTPLOP MUL10 M10 H1000 H12 M5 NEG12 NEG5 NEWSAM NFDVK NLOF NOKMS NOT0 NUM NUMPUT NUM0 NUHl NUH2 NUH3 NUM4 NXSTR NXTCHR NXTLN NXTPNT OKI 0K2 OLDSAM OPKRTN O^DVg OSDVl 0S0y2 0SDV3 0SDV4 OUTL P PCKLOP 3061 PL1000 1515 PL400 3460 4513 PL60 POLAR 2266 1367 PP17 PP400 2755 3400 PIOAC P1000 0726 P17 3106 P1777 0355 P2 2743 P37 0350 P4 7000 P401 P4040 P4060 P57 P60 P6000 P7K QAB QACA QACHAR QACKLF QACNTR QAO QAOUN QAE 2166 7055 3301 2757 27^4 0354 1113 5017 5030 5670 5634 5617 5041 3312 5063 QAE0L3. 7400 QAEOMl 3400 QAEXIT 5650 QAF 5531 QAFLO 4000 QAG 5075 QAH 5127 5144 QAI QAINIT 5013 QAJ 5151 QAK 5320 QAKRB 6036 5210 QAL QALEGL 5610 QAM 5114 QAN 5236 5244 QAO QAP 5255 QAQ 5276 QARFSH 5066 QAT 5303 QATLS 6046 QATPE 5657 QATSF 6041 QATY 5551 QAU 5521 QAV 5331 QAW 5525 QAX 5437 QAY 5425 Qk£ 5314 QSAVE 1066 QUECNT 0025 QUEIN 0023 QUEMAX 1062 QUEOUT 0024 QUPUT 1033 RADPTR 0057 RAOVAL 6417 RDCWD 1677 ROLEN 1742 ROMBLK 6000 READ 4344 REMS2 4046 RESTR 3233 RMBLK 1744 RTNJMP 0274 RTNLOF 0271 RTNL IF 0270 S SAMX SAMY Qrpf n SCPRTN SCPX IT SELDV0 SELOVl I SELDV2 SEL0V4 SELDV4 SELPTR SERVE SETANA SETCDF SETFUL SETHC SETMOT SETUP SFDV0 SFDVl SFDV2 SFDV3 SFDV4 START STATUS STQUE STRQUE STRRDE 0526 0703 2000 2043 2163 0066 0067 0070 0071 0072 0100 0234 4073 2320 2114 2 11 2200 4023 0307 0331 0410 0433 045*6 4020 0026 1064 6373 3315 TBLK 1662 TBUSY 1057 TEMP 0104 TEMPHI 0051 TEMPLO 00!^0 TIADR 1512 TI AD0 6323 TI ADl 6331 TI AD2 63v37 TI AD3 TI AD4 6345 63b3 0240 0275 6272 6277 6304 6311 6316 130 7 1511 1615 1102 1101 1622 1676 1163 1103 0022 4535 4757 4765 4774 5001 TIRTN TISA TISTR0 TISTRl TISTR2 TiSTRvj TISTR4 TI VAL TO TPARGS TPINST TPLOF TPLOP TPRDC TPWAIT TPWORQ TTYFLG TXTl TXT10 TXTll TXT12 TXT13 TXT14 TXT2 5006 TXTv5 46b0 4672 4705 4720 4747 1663 30^5 4S06 6361 2737 0016 3540 0533 1743 4400 4000 0010 0011 0012 0013 00^0 2017 0047 0046 2400 0000 TXT4 TXTt? TXT6 TX T 7 UNIT UPACK UPLIM VALTAB VCOORD VCPTR VCTAB W 4t^6f5 WMBLK WRIT WRMBLK XAXOV0 XAXOVl XAXDV2 XAXDV3 XAXDV4 XCORD XCURHI XCURLO XYGET XYHC YAXOV0 001 4 YAXDVl 0015 YAX0V2 0016 rAXDV3 0017 YAXDV4 0024 YCUR 0035 2 64 7 YLOP J^XIT 0512 READER^S COMMENTS TISA DEC-.12«UW3A-D Digital Equipment Corporation maintains a- continuous effort to improve the quality and usefulness of its publications. To do this effectively we need user feedback - your critical evaluation of this manual. Please comment on this manual's completeness, accuracy, organization, usability, and readability. Did you find errors in this manual? How can this manual be improved? DEC also strives to keep its customers informed of current DEC software and publications. Thus, the following periodically distributed publications are available upon request. Please check the appropriate boxes for a current issue of the publication(s) desired. Software Manual Update, a quarterly collection of revisions to current software manuals. ^ ^^ser's Bookshelf, a bibHography of current software manuals. Program Library Price List, a list of currently available software programs and manuals. Please describe your position. Name Organization Street Department City_ State Zip or Country Do Not Tear - Fold Here and Staple FIRST CLASS PERMFTNO, 33 MAYNARD, MASS. BUSINESS REPLY MAIL NO POSTAGE STAMP NECESSARY IF MAILED IN THE UNITED STATES Postage will be paid by: Digital Equipment Corporation Software Information Services 146 Main Street, Bldg. 3-5 Maynard, Massadmsetts 01754 HOW TO OBT AIN SOFTWARE INFORMATION Annuur^. v it^ nts lor new and revised software a.\ well as programming notes, software probicms. and documenta- rjon vorredjons art published by Software Intormation Ser\'icc m the following newsletters. Digital Software News tor the PDP-8 Family Digital Software News tor the PDP-9/] 5 Family PDP-6/PDP 10 Software Bulletin These newsletters contain information applicable to software available from Digital's Program Library Please complete the card below to place your name on the newsletter mailing list. Ouesrions or problems concerning DEC Software should be reported to the Software Specialist at your nearest DEC regional ot district sales office, In cases where no Software Specialist is available, please send a Software Trouble Rep{)rt torm with details of the problem to Software Information Service Digital Equipment Corporation 146 Mam Street. Bldg. 3-5 Maynard. Massachusetts 01754 These forms which are available without charge from the Program Library, should be fully filled out and accompanied ^\ reletvpe output as well as listings or tapes of the user program to facilitate a complete investigation. An dmvwc-T will he sent to the individual and appropriate topics of general interest will be printed in the newsletter. New and revised software and manuals, Software Trouble Report forms, and cumulative Software Manual Updates dre available from the Program Library. When ordenng mclude the document number and a brief description of the program or manual requested. Revisions of programs and documents will be announced in the newsletters and Direct all inquiries and requests to: d price hst will be included twice yearly. Program Library Digital Equipment Corporation 146 Main Street. Bldg. 3-5 Maynard, Massachusetts 01754 Digital Equipment Computer Users Society (DECUS) maintains a user Library and publishes a catalog of programs as wen as the DECUSCOPE magazine for its members and non-members who request please write to DECUS Digital Equipment Corporation 146 Main Street Maynard, Massachusetts 01754 Send Digital's software newsletters to: Name Company Name Address (zip code) My computer is a PDP-8/I LINC-8 PDP-9 PDP-10 My system serial number is PDP-8/L POP- 2 1 (if known) it. For further information Do Not Tear - Fold Here and Staple FIRST CLASS PERMIT NO, 33 MAYNARD, MASS. BUSINESS REPLY MAIL NO POSTAGE STAMP NECESSARY IF MAILED IN THE UNITED STATES Postage will be paid by: Digital Equqiment Corporation Software Information Services 146 Main Street, Bldg. 3-5 Maynard, Massachusetts 01754 i 1 Digital Equipment Corporation IVIaynard, IVIassachusetts printed in U S A
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies