perm filename MANUAL.TAP[2,VDS] blob sn#208023 filedate 1976-03-19 generic text, type C, neo UTF8

COMMENT ⊗ VALID 00020 PAGES C REC PAGE DESCRIPTION C00001 00001 C00004 00002 KEY CODES C00008 00003 KEY FUNCTIONS C00012 00004 KEY FUNCTIONS (continued) C00016 00005 KEY FUNCTIONS (continued) C00019 00006 KEY FUNCTIONS (continued) C00024 00007 KEY FUNCTIONS (continued) C00027 00008 ERROR CODES C00031 00009 ERROR CODES (continued) C00035 00010 ERROR CODES (continued) C00036 00011 ERROR TYPES C00038 00012 STANDARD FIXUPS APPLIED IF REQUESTED C00041 00013 STANDARD FIXUPS APPLIED IF REQUESTED (continued) C00042 00014 DISPLAY FORMATS C00047 00015 DISPLAY FORMATS (continued) C00051 00016 DISPLAY FORMATS (continued) C00053 00017 ARITHMETIC AND LOGICAL OPERATORS C00056 00018 OPERATION CODES C00059 00019 KEY CODES C00063 00020 ERROR CODES (continued) C00065 ENDMK C⊗; KEY CODES Function Keys Function Keys 0 0 DROP DR 1 1 LST k LK 2 2 STORE ST 3 3 FIX FX 4 4 SCI SI 5 5 I.X. IX 6 6 EXCH XC 7 7 ; ; 8 8 , , 9 9 LST x LX 0 0 LST y LY . . =? EQ E E # NE - - > GT + + < LT / / MAG MG * * ARG AG ( ( abs AB ** ** sqrt SR ) ) **2 SQ = = MAX MX A A SCRATCH SC <pi> PI FLAG FL R R KEYLOG KL CLEAR CL Show Display & Registers <cr>|RR CLR D CD Restart Execution RS CORRECT CO Terminate Execution XX ***END OF PAGE KEY FUNCTIONS A. ENTRY KEYS 0 ... 9 Enter corresponding digit into expression/display; Identify registers, flags, functions, etc.; Select display mode; Enter addresses for GOTO, JUMP, etc. . Enter a decimal point into the expression/display; During exponent entry, revert to mantissa entry. E or x10** Enter an "E" into the display indicating that the following entries are to form an exponent. + - Enter the corresponding sign for the mantissa or exponent that follows (see Arithemetic Keys below). COR Remove (i.e. correct) the last entry character (e.g. sign, digit, decimal point, "E"). B. ARITHMETIC KEYS + - X / ** Enter the corresponding operator into the expression (the normal algebraic heirarchy will be observed); Indicate the operation for register arithmetic. C. EXPRESSION CONTROL ( ) Enter the corresponding parentheses into the expression. = Complete the evaluation of the expression in progress. COR Clear the last entry (e.g. parenthesis, operator, etc.). CLR D Clear the display contents. CLEAR Clear the entire expression. I.X. Execute the last operator entered. Exchange the last two numeric values in the expression. , Indicate the end of a numeric entry, e.g. separate arguments for a multiple argument function. ; Indicate the end of a numeric entry, e.g. separate vectors for the summation functions. ***END OF PAGE KEY FUNCTIONS (continued) D. REGISTER/FLAG CONTROL A B C D E Reference the corresponding register or flag (when preceeded by FLAG) for recall, storage, or scratching. R Indicate a data register is to be involved in recall, storage, or scratching (to be followed by up to 3 digits, or "R" for indirect referencing, or "(" for computed referencing). FLAG Indicate a flag is to be involved in recall, storage, or scratching (to be followed by a digit, a letter, or an expression enclosed in parentheses). -> or STO Indicate the current value in the display is to be stored in the location to be given (register(s) or flag(s)); if followed by an arithmetic operator the transfer is to be done as: <reg contents> <operator> <display contents> -> <register> SCR Indicate that the following register(s)/flag(s) is (are) to be scratched (i.e. cleared). LST x LST y Recall the contents of the corresponding register to the expression and display. LST k Display the keycode of the last key executed (follow by CLR D to restore the previous display, or by any other key to continue). Enter the value of pi (3.14159...) into the expression. P Used in user definable functions and subroutines to indicate a parameter that will be passed to the routine when it is invoked; followed by one digit to identify the parameter. E. MATHEMATICAL FUNCTIONS WITH ONE ARGUMENT abs sin Enter the corresponding function reference into the expression, with its argument to follow (can be applied exp log ... to a preceeding argument with the I.X. key). **2 ! Execute the indicated function using the currently displayed value as its argument. ***END OF PAGE KEY FUNCTIONS (continued) F. MATHEMATICAL FUNCTIONS WITH MULTIPLE ARGUMENTS MAG ARG MAX Enter the corresponding function reference into the expression, with arguments to follow (can be applied ABSC ORD ... to preceeding arguments by using the I.X. key). Sum the numbers (or vectors) which follow, i.e. (X1, X2, X3, ...) or (X1, Y1; X2, Y2; X3, Y3; ...) or (X1, Y1, Z1; X2, Y2, Z2; X3, Y3, Z3; ...) ELIM Eliminate the following number (or vector) from the summation in progress. G. RELATIONAL OPERATORS < =? # > Enter the corresponding operator into the expression (to provide for the evaluation of Boolean expressions). H. OVERALL OPERATIONAL CONTROL RUN KEYLOG Initiate the corresponding EDIT CLOCK operating mode. FIX SCI Establish corresponding display mode, using the previously selected number of digits unless a digit follows. DEG RAD Establish the corresponding units for arguments for all trigonometric functions. I. USER DEFINABLE FUNCTIONS F G Invoke the user definable function indicated by the following identification keystroke. DEFINE Initiate the definition of the function indicated by the following identification keystrokes (i.e. "F" or "G" followed by an identification keystroke). ***END OF PAGE KEY FUNCTIONS (continued) J. PROGRAM STATEMENTS GO TO Transfer control to the instruction located at the address referenced by the argument which follows. CALL Transfer control to the instruction located at the address referenced by the argument which follows, and return to this point upon encountering a RETURN. JUMP Skip over the number of instructions indicated by the argument which follows (may be negative). LOOP END Indicate the beginning/end of a group of instructions to be executed repetitively. IF Initiate the conditional execution of a sequence of instructions. If the <value> which follows (which may be a FLAG or an expression inclosed in parentheses) is less than one (<1), skip over the following instructions up to the corresponding ELSE, otherwise resume execution with the next instruction. ELSE Separate instruction sequences for the IF instruction. RESET Execute a STOP, clear the user flags (only 0-9?), and set the program pointer to the start of the current program in preparation for program execution. LABEL For administering labeled transfers within a program, e.g. "GO TO LABEL <key>" where the occurance of "LABEL <key>" elsewhere in the program indicates where control is to be directed. SUB Indicate that the user subroutine identified by the argument which follows is to be the destination for a GO TO or CALL instruction. RETURN Indicate the end of a subroutine, or a program LOOP. ENTER Stop execution and indicate to the user that the entry indicated by the following argument is needed (the user presses EXEC when the entry is completed). PAUSE Stop execution briefly and display the current value of X. If any key is depressed at the time, execute a STOP. STOP Stop execution, leaving the program pointer where it is (i.e. execution can be resumed by pressing EXEC) and return control to the keyboard. INPUT OUTPUT Initiate an interaction with a peripheral device (e.g. data transfer, or control) as defined by the code argument which follows. ***END OF PAGE KEY FUNCTIONS (continued) K. PROGRAM EDITING INS Initiate the insertion of instructions into the program at the currently displayed location. (The insertion is terminated by pressing any edit key.) DEL Delete the instruction currently displayed. STEP Move the program "through the display" one step. BACK Reverse of STEP. SCR Delete the program segment indicated by the arguments which follow. L. PROGRAM CONTROL (initiated from the keyboard in RUN mode) EXEC Begin (or resume) program execution at the instruction "pointed at" by the program pointer. STEP Display the step number of the next program step to be executed, execute the instruction, display the result, and move to the next step. BACK Decrement the step number and display it along with the corresponding program step (follow by CLR D to restore the previous display, or by any other key to continue). GO TO Shift control to the instruction located at the address referenced by the argument which follows. STOP Stop program execution and return control to the keyboard. RESET Execute a STOP, clear the user flags (only 0-9?), and set the program pointer to zero (the start of the user program area)in preparation for program execution. FLAG Pressing this key during program execution causes flag A to be set. ***END OF PAGE ERROR CODES 1. SYNTAX Type 1.1 ")" or "=" after an operator, or when X(0) is empty 2 1.2 Operator entered when X(0) is empty, or after another operater 2 1.3 Attempt to STORE a function reference or null contents of X(0) 2 1.4 Attempt to apply COR to a terminated number 2 1.5 I.X. attempted without proper setup 2 1.6 DROP attempted without S(0) being empty 2 2. PARENTHESES 2.1 Extra ")" or missing "(" 2 2.2 Extra "(" or missing ")" 2 2.3 Empty parentheses, i.e. ( ) 6 3. MATHEMATICAL 3.1 Division by zero 6 3.2 Invalid argument for a function or operation 6 3.3 Exponent underflow 6 3.4 Exponent overflow 6 3.5 Exponent underflow during register arithemic 6 3.6 Exponent overflow during register arithemic 6 3.7 Attempt to enter a number out of the maximum dynamic range 7 3.8 Attempt to execute "m;n" 2 4. REGISTERS/FLAGS 4.1 Subscript too large 2 4.2 Subscript negative 5 4.3 Undefined register contents on recall 5 4.4 Undefined register contents in indirect referencing 5 4.5 Undefined register contents in storage with register arithmetic 5 4.6 Attempt to use more than 15 levels of indirect register referencing 4 ***END OF PAGE ERROR CODES (continued) 5. MULTIPLE KEYSTROKE SEQUENCE 5.1 Invalid instruction parameter entered 4 5.2 Multiple argument function not followed by "(" 1 5.3 Too few arguments provided for multiple argument function 2 5.4 Attempt to provide too many arguments for multiple argument function 2 5.5 Attempt to apply a general argument to an instruction not allowing 4 6. EDITING 6.1 Edit key entered while not in EDIT mode 2 6.2 STEP or BACK entered while in KEYLOG mode 2 6.3 Attempt to redefine existing subprogram 5 6.4 Program area full 2 7. PROGRAM 7.1 Attempt to EXECute program while not in RUN mode 2 7.2 LABEL not found 4 7.3 Address beyond the end of the current routine 3 7.4 Address negative 5 7.5 Attempt to execute certain program instructions in keyboard mode 2 (e.g. ENTER, IF, JUMP, LOOP, RETURN) 7.6 Attempt to nest ENTER instructions. 2 8. SUBPROGRAM 8.1 Routine referenced is undefined 3 8.2 Attempt to nest subprograms too deeply 3 8.3 Improper use of RETURN 2 9. EXPRESSION LIMITATION 9.1 Attempt to make an entry into the stack when it's full 2 9.2 Attempt to enter more than 15 adjacent "(" 2 9.3 Attempt to enter a function when there isn't space for its (minimum number of) argument(s) 2 ***END OF PAGE ERROR CODES (continued) 0. INPUT/OUTPUT 0.1 Attempt to read from an unavailable device 2 0.2 Attempt to write on an unavailable device 2 0.3 Data error occurred on transfer 2 0.4 Insufficient space at destination for transfer 2 ***END OF PAGE ERROR TYPES TYPE 1 - Response: CLR D & COR → ignore last key and continue Error codes: 5.2 TYPE 2 - Response: CLR D & COR → ignore last key and continue Error codes: 1.1-1.6, 2.1, 2.2, 3.8, 5.3, 5.4, 6.1, 6.2, 6.4 TYPE 3 - Response: CLR D & COR → ignore last sequence and continue Error codes: 4.1, 7.3, 8.1, 8.2, 0.1-0.4 TYPE 4 - Response: COR → ignore last key and continue sequence CLR D → ignore entire extended sequence Error codes: 4.6, 5.1, 5.5, 7.2 TYPE 5 - Response: COR → reject "standard fixup" and ignore entire sequence CLR D → accept "standard fixup" and process last key Error codes: 4.2-4.5, 6.3, 7.4 TYPE 6 - Response: COR → reject "standard fixup" and ignore last key CLR D → accept "standard fixup" and process last key Error codes: 2.3, 3.1-3.6 TYPE 7 - Response: COR → reject "standard fixup" and ignore last key CLR D → accept "standard fixup" and process last key Error codes: 3.7 ***END OF PAGE STANDARD FIXUPS APPLIED IF REQUESTED Error 2.3 - EMPTY PARENTHESES Remove the last left parenthesis from the expression. Error 3.1 - DIVISION BY ZERO Assume the largest representable magnitude, with the sign of the numerator. Error 3.2 - INVALID ARGUMENT FOR A FUNCTION OR OPERATION Operation/Funct. Valid Argument(s) Fixup For Invalid Argument a**b a>=0, all b use |a| (a<0, b an integer) sqrt x x > 0 use |x| --------------- Future Functions --------------- arcsin x |x| <= 1 use sgn(x) arccos x |x| <= 1 use sgn(x) x! x >= 0 & integer use int|x| log x x > 0 x = 0 -> -(largest magnitude) x < 0 -> use |x| ln x x > 0 x = 0 -> -(largest magnitude) x < 0 -> use |x| Errors 3.3 & 3.5 - EXPONENT UNDERFLOW Assume zero. Errors 3.4 & 3.6 - EXPONENT OVERFLOW Assume the largest representable magnitude, with the appropriate sign. Error 3.7 - ATTEMPT TO ENTER A NUMBER OUT OF THE MAXIMUM DYMANIC RANGE Make the same assumptions as for error 3.3 or 3.4 as appropriate. ***END OF PAGE STANDARD FIXUPS APPLIED IF REQUESTED (continued) Error 4.2 - SUBSCRIPT NEGATIVE Assume the subscript is positive with the same magnitude. Errors 4.3-4.5 - UNDEFINED REGISTER CONTENTS Assume the register contains zero. Error 6.3 - ATTEMPT TO REDEFINE AN EXISTING SUBPROGRAM Allow the redefinition. Error 7.4 - ADDRESS NEGATIVE Assume the address is positive with the same magnitude. ***END OF PAGE DISPLAY FORMATS A. RUN mode 1. Data When the "visible" register of the expression stack is empty the display is blank. On entry up to 13 digits can be displayed, plus sign and decimal point. When an exponent is entered only ten mantissa digits are shown. On output either fixed or scientific notation can be selected, with the number of digits to the right of the decimal point prescribed (0-9). A maximum of ten mantissa digits are displayed. When space allows, digits are grouped by threes with a blank between groups. The sign is always adjacent to the leftmost digit, and in scientific notation the mantissa is right justified with one blank between it and the exponent if space allows. When the exponent is less than ten only one digit is displayed. Examples: -1234567890123. -1 234.567 89 -12 345.67 E-3 -12345.67890E-12 -1.3 E 27 2. Error When an error occurs, or is predicted, the word "Error" is displayed along with a two digit code (of the form <category>.<member>) identifying the error. If the error is one to which the user can give different responses for different results (e.g. request application of a standard fixup) an "r" is appended to the code. Examples: Error 1.2 Error 5.1 r 3. Parentheses When the last entry made in the expression is a left parenthesis the display shows the number of adjacent left parentheses that have been entered. Example: 2- 4. LAST KEY Entering this command causes the keycode of the preceeding key to be displayed. Example: ......018...... ***END OF PAGE DISPLAY FORMATS (continued) A. RUN mode (continued) 5. Function reference When a function reference is entered into an expression the display indicates the keycode of the function and shows how many arguments are required/allowed. If the function reference is preceeded by a unary minus the sign is shown. Examples: - .047.1 .044.2 .049.2-6 6. Extended sequence When an extended sequence is being entered (e.g. ->*R23) the keycode of the last key entered is displayed set off by -'s to distinguish it from the LAST KEY display. Example: ------031------ B. EDIT mode The same display features as in RUN mode apply in this mode except that the program step number is shown in the leftmost four digits. Thus the effective display size is twelve characters instead of sixteen. 1. Data Examples: 0027-1234567890. 1094-1234.56789 0011 1 234. E-3 0123-12345.6E-12 0076 -1.3 E 27 2. Error Examples: 0436 Error 1.2 0059 Error 5.1 r 3. Parentheses Example: 1234 2- 4. LAST KEY Example: 7426...018...... 5. Function reference Examples: 0852 - .047.1 0002 - .049.2-6 6. Extended sequence Example: 0075---031------ ***END OF PAGE DISPLAY FORMATS (continued) B. EDIT mode (continued) 7. ENTER The reference number (0-9) for the entry is displayed along with the program step number. Example: 0530...E7....... 8. Program viewing The program is displayed three steps at a time with the center code corresponding to the program step number shown. When the program step number corresponds to the first or last instruction in the memory only two steps are displayed. Examples: 1023-047.018.013 1024-018.013. 0000- .001.002. C. PROGRAM execution 1. Data Same as in RUN mode 2. Error Same as in EDIT mode 3. ENTER Same as in EDIT mode with the omission of the program step number. Example: .......E7....... ***END OF PAGE ARITHMETIC AND LOGICAL OPERATORS NAME SYMBOL MEANING EXAMPLES Unary plus + Indicate positiveness +A, +3, +sqrt(30) Unary minus - Indicate the negative -A, -3, -sqrt(30) of a quantity Double star ** Exponentiation 4**5, 2**sqrt(30), R5**A Implied multiply none Multiplication 2 sqrt(30), R5 A Times * Multiplication 4*5, 2*sqrt(30), R5*A Slash / Division 4/5, 2/sqrt(30), R5/A Plus + Addition 4+5, 2+sqrt(30), R5+A Minus - Subtraction 4-5, 2-sqrt(30), R5-A Equal? =? Test for equality 4=?5, 2=?sqrt(30), R5=?A Not equal? # Test for inequality 4#5, 2#sqrt(30), R5#A Less than? < Test for less than 4<5, 2<sqrt(30), R5<A Greater than? > Test for greater than 4>5, 2>sqrt(30), R5>A FUNCTIONS NAME SYMBOL MEANING COMMENTS Absolute value abs abs(x) = |x| Square **2 x**2 = x*x Square root sqrt sqrt(x) = x**0.5 x>=0 (Standard fixup: use |x|) Argument ARG ARG(x,y)= arctan(y/x) Gives principal value (-90 to 90) Magnitude MAG MAG(x,y)= sqrt(x*x+y*y) Maximum MAX MAX(x,y,...) Two to six arguments allowed ***END OF PAGE OPERATION CODES 73 mult. arg. lang. funct. 72 mult. arg. funct. 71 single arg. lang. funct. 70 single arg. funct. 60 ** 51 implied * in "-(" 50 implied * 41 * 40 / 31 + 30 - 23 < 22 > 21 # 20 =? 10 , or ; 01 = 00 0 (First digit gives the heirarchy level) LANGUAGE FUNCTION RETURN CODES 0 - No argument expression(s) allowed (e.g. FIX, SCI) 1 - Recall R (One argument only) 2 - STORE R (One or two arguments) 3 - SCRATCH R (One or two arguments) 4 - SCRATCH FLAG (One or two arguments) 5 - STORE FLAG (One or two arguments) 6 - Recall FLAG (One argument only) ***END OF PAGE KEY CODES Function Key Code Function Key Code 0 0 0 DROP V 29 1 1 1 LST k L 30 2 2 2 STORE Z 31 3 3 3 FIX J 32 4 4 4 SCI N 33 5 5 5 I.X. I 34 6 6 6 EXCH H 35 7 7 7 ; ; 36 8 8 8 , , 37 9 9 9 LST x X 38 0 0 10 LST y Y 39 . . 11 EQ ? 40 E E 12 NE # 41 - - 13 GT > 42 + + 14 LT < 43 / / 16 MAG M 44 * * 17 ARG G 45 ( ( 18 abs B 46 ** U 19 sqrt T 47 ) ) 20 **2 Q 48 = = 22 MAX W 49 A A 23 SCRatch S 50 <pi> P 24 FLAG F 51 R R 25 KEYLOG K 52 CLEAR C 26 Show Display & Registers 15 CLR D D 27 Restart Execution 99 CORRECT O 28 Terminate Execution 98 ***END OF PAGE ERROR CODES (continued) 5. MULTIPLE KEYSTROKE SEQUENCE 5.1 Invalid instruction parameter entered 4 5.2 Multiple argument function not followed by "(" 1 5.3 Too few arguments provided for multiple argument function 2 5.4 Attempt to provide too many arguments for multiple argument function 2 5.5 Attempt to apply a general argument to an instruction not allowing 4 9. EXPRESSION LIMITATION 9.1 Attempt to make an entry into the stack when it's full 2 9.2 Attempt to enter more than 15 adjacent "(" 2 9.3 Attempt to enter a function when there isn't space for its (minimum number of) argument(s) 2 ***END OF PAGE