Digital PDFs
Documents
Guest
Register
Log In
XX-7D431-FD
May 2000
42 pages
Original
13MB
view
download
Document:
PDP9PTSUM
Order Number:
XX-7D431-FD
Revision:
Pages:
42
Original Filename:
http://bitsavers.org/pdf/dec/pdp9/PDP9PTSUM.pdf
OCR Text
CONTENTS 1. LOADING PROGRAMS 2. SYMBOLS FORTRAN-4 1. LOADING INSTRUCTIONS 2 2. GENERAL COMMAND CHARACTERS 2 3. COMMAND STRING 2 4. RUNNING INSTRUCTIONS 3 5. ERROR CONDITIONS AND RECOVERY 3 6. RESTART PROCEDURES 3 7. EXAMPLES 3 MACRO-9 1. LOADING INSTRUCTIONS 4 2. GENERAL COMMAND CHARACTERS 4 3. COMMAND STRING 4 4. RUNNING INSTRUCTIONS 5 5. ERROR CONDITIONS AND RECOVERY PROCEDURES 5 6. REST ART PROCEDURES 5 7. EXAMPLES 5 PIP-9 l. LOADING INSTRUCTIONS 7 2.. GENERAL COMMAND CHARACTERS 7 3. COMMAND STRING 7 4. OPERATING INSTRUCTIONS 5. ERROR CONDITIONS AND RECOVERY PROCEDURES 5 6. REST ART PROCEDURES 5 7. EXAMPLES 9 . 8 EDITOR 1. LOADI NG INSTRUCTIONS 11 2. GE I'IERAL COMMAND CHARACTERS 11 3. COMMAND STRING 11 4. OPERATING PROCEDURES 11 iii APPENDIX 3 MACRO-9ERROR DIAGNOSTICS 31 APPENDIX 4 MACRO-9 PERMAI'-lENT SYMBOL TABLE 32 APPENDIX 5 SYSTEM RESTART 33 APPENDIX 6 EXPANATION OF lOPS ERROR CODES v 35 INTRODUCTION This guide for operating the paper lape version of the PDP-9 ADVANCED Software System is planned for convenient use at the computer. I t contains general operating instructions, as well as concise summaries of operating procedures for individual system programs. For more detailed descriptions of these programs, the reader is referred to the PDP-9 Monitor Programmer's Reference Manual (DEC-9AMABO-D) and the Utility Programs Manual (DEC-9A-GUAB-D). 1. LOADI NG PROGRAMS In the paper tape system, each system program, accompanied by the necessary I/O device handlers and an appropriate version of the I/O Monitor, resides on a separate paper tape in absolute format. The ei ght system tapes suppl ied are: FORTRAN IV MACRO-9 PIP-9 Editor (EDIT -9) Li nki ng Loader (L1 N K-9) DDT-9 (without patch file capabilities) DDT-9 (with patch file capabilities) 7-TO-9 Converter (CONV-9) To load these programs, place the tape in the reader, set the loading address in the console address switches, press the tape feed button, depress I/O RESET, and then depress the READIN switch. The loading addresses are: 17720 for 8K systems 37720 for 16K systems 57720 for 24K systems • 77720 for 32K systems Either the Linking loader or DDT-9 may be used to load user programs. 2. SYMBOLS (Used In This Manual) Carriage return LJ Space + Represents the CTRL key on the Teletype ~TRL) Represents the CTRL key on the Teletype (AI"T\ .~ Represents the ALTMODE key on the Teletype I 1. FORTRAN ~ _lOADI NG 11'-1 STRUCTI ON 5 Put the puper tape FORTRAN IVCompiler in the reader, depress the tape-feed control to clear the end-of-tape flag, set the address switches to 17720 (8K), depress I/ O RESET and then READ IN. When FORTRAI'-1 IV i s ready to accept a command string (on the same line as the » it prints on the teleprinter: FORTRAN 4 > 2. GENER A L COMf,t\AND CHARACTERS RUBOUT (echos \) delet e single character ~.IE0 U (,.) (echos cL) chlete entire line (C TRQ P (echos.P) a) at e nd of pass I, begin pass 2 L) whi Ie campi ler is flJnni ng re start at beginning of pa ss 1 3. Cot';\/v\l~ND Smll"-lG The fo rmat e.); p2ckd by the fORTRA1"-l IV command siTing processor is as follows: Options File Name Termi nator 0, 5, L, B FILE X 'f"1 ie name te rml. nalor or ALl "MODE where o S 0= objec1 li sting symbol ma p l (r~Cjui rlS J) Lhal's after compiling current program must be a legal FOR TRAl'l name L source listing B binar y indicates batch compilation; after compiling current program, types FORTRAN 4 > and waits for next command string. The options may be used in any combination (or none at all). The options desired may appear in any order, separated by commas and terminated by 4 - . If none of the options are desired, 4 - is sufficient, with the sole output being compiler diagnostics on the teleprinter. The file name must be terminated by a comma. Rubouts may be used to delete unwanted characters, and control U (4u) to delete entire lines, prior to typing the command string terminator. 4. RUNNING INSTRUCTIONS After the compiler is loaded into core, a. Put the source program tape in the paper tape reader, momentarily depressing the tapefeed control. b. Type the command string. c. At the end of Pass 1 (when the END statement is encountered for the first time), FORTRAN IV indicates: END PA.SS 1 +P 5. d. Reload the source tape for Pass 2, momentarily depressing the tape-feed control. e. Initiate Pass 2 by typing control P(+P). ERROR CONDITIONS AND RECOVERY lOPS 4 Device not ready. Check devices, correct condition, and type Control R ( R). lOP SO~-3~ See SYSTEM RE START procedures. See Appendix 6 for a list of compiler errors. 6. RESTART PROCEDURES CTRL P (+P) Restart the compiler, if running. See Appendix 5 for SYSTEM RESTART operation if FORTRAN IV has halted . • 7. EXAMPLES 1. To compi Ie a source tape wi th none of the options, type the command stri ng: + - FILEX,~ This is very useful for a first co~pilation when only error messages are desired. 2. If the output desired is a binary tape, type the command string: B'-FILEX,~ 3. If the output desired is a complete listing, type the command string: SLO 411- FI LEX, ~. 3 I 1. MACRO-9 LOADING INSTRUCTIONS Put the paper tape MACRO-9 assembler in the reader, depress the tape-feed control to clear the end-of-tape flag, set address switches to 17720(8K}, depress I/O RESET and then READ IN. When MACRO-9 is ready to accept a command string (on the same line as the >), it prints on the teleprinter: MACRO > 2. GENERAL COMMAND CHARACTERS RUBOUT (echos \) delete single character (CTRL) U (+) (echos@) delete complete line (CTRL) P (echos. P) a) at end of pass 1, begin pass 2 b) while assembler is running, restart at beginning of pass 1 3. COMMAND STRING The format expected by the MACRO-9 command string pr"ocessor is as follows: Options P, S, L, B File Name Terminator ~ .--FILEX or ALT MODE halts after assembling current program where B = binary L = listing S = symbol table (on listing device) P = parameters to be entered on teletype .. return to MACRO-9 after assembling current program, types MACRO > and waits for next assembly command stri ng. Options may be used in any combination (or none at all). The options may appear in any order, separated by commas and terminated by~. If no options are desired, 4 - - is sufficient and the sole output will be assembly error messages on the teleprinter. Rubouts may be used to delete unwanted characters, and control U (+U) to delete entire lines, prior to typing the command string terminator. 4 4. RUNNING INSTRUCTIONS After the assembler is in core, a. load the user program source tape in the paper tape reader, momentarily depressing the tape-feed control. b . Type the command stri ng. c. At the end of Pass 1 (when the. END statement is encountered for the first time) MACRO indicates: END OF PASS 1 tp d. Reload the source tape for Pass 2, momentarily depressing the tape-feed control. e. Initiate Pass 2 by typing control P (+P). If this is a multi-tape assembly (where the first n source tapes are terminated with .EOT and the last is terminated with. END), MACRO-9 indicates the end of each tape by typing. EOT on the teleprinter. This allows the user to load the next source tape (depress the tape-feed control) and then type control P (fp). If the P option was used, the parameters are entered only at the beginning of Pass 1 and not aga in for Pass 2. 5. ERROR CONDITIONS AND RECOVERY PROCEDURES lOPS 4 Device not ready. Check devices, correct condition and type Control R (+R). lOP S 00-30 See SYSTEM RE START procedures. 6. RESTART PROCEDURES ¢TRl) P (+P) · Restart MACRO-9, if running. See Appendix 5 for operation of SYSTEM RESTART if MACRO-9 has halted. 7. EXAMPLES ,,0 1. To assemble a source tape with none of the options, type the command string: 4-FllEX~ This is very useful forthe first assembly of a program, when only error messages are desired. 2. If the output desired is a binary tape and input includes parameters to be entered on the Teletype, type the command string: 5 The parameters should be entered during the first pass only. Parameters are typed following the command string, in the form of MACRO-9 direct assignment statements. After typing in parameters, the user types+D, as shown in the example below. BANK = 0 (CTRL) D (EOT) MACRO the outputs EOT +p type control P (-fP) when ready to proceed. 3. If the output desired is a complete listing but no binary tape, type the command string: S, L 4-FI LEX 6 Jl 1. LOADING INSTRUCTIONS Put the paper tape PIP program in the reader, depress the tape-feed control to clear the end- of-tape flag, set the address switches to 17720 (8K), depress I/ O RESET and then READ IN. When PI P-9 is ready to accept a command stri ng (on the same line as the » , it pri nts on the teleprinter: PIP > 2. 3. GENERAL COMMAND CHARACTERS RUBOUT (echos \) delete single character «:TRl) U (+) (echos@) de lete entire line (CTRL) P (echos+P) restart PI P COMMAND STRI NG The general format of a PIP command string is as follows: F DD (S) terminated by a carriage return or ALT MODE. F is a function character, which may be: . T transferfile V veri fy fi Ie S segment fi Ie DD is the destination device. PP paper tape punch TT = teletype LP line printer (S) indicates the switch options. Data Mode Switches: A= IOPSASCII B lOPS binary = Image Alphanumeric Function switches: G correct bad parity lines E convert tabs to spaces 7 4"- SD C = convert multiple spaces to tabs Y = segment fi les (wi th n output tapes, use n-l commas after PP) W = combine files (with n input tapes, use n-l commas after PR) .e--terminates information concerning the destination device. Data for the source device follows the 04--. SO is the source dev ice. PR = paper tape reader IT teletype CD card reader Carriage Return or All MODE is the command string terminator : Carriage Return - return to PI P after complet~on of the current function . All MODE - halt after completion of the current function. Rubouts may be used to delete unwanted characters, and control U (+U) to delete the entire line, prior to typing the command string terminator. 4. OPERATING INSTRUCTIONS Legal function/ switch combinations Transfe r (T): all switches legal ASCII mode (A): all function switches legal E and C are'· contradictory Y and Ware contradictory Binary mode (B) : function switch W only !magemode (I): no function switches legal Verify (V): switches A and B only Segment (S): no switches legal G Switch Use When bad parity is encountered, the INPUT PARITY ERRORmessage is output on the Teletype, followed by the line in error. The user may: . a. Accept the line by typing a carriage return. b. De lete the line by typi ng D~ c. Retype the line, terminating with a carriage return. d . Abort the operation by typing Control P (+P) to restart PI P. 8 5. 6. ERROR CONDITIONS AND RECOVERY PROCEDURES lOPS 4 device not ready Ready device and type control R (+R) lOPS 00-30 See SYSTEM RESTART Procedures RESTART PROCEDURES (CTRL)P (+P) restart PIP, if running See Appendix 5 for operation of SYSTEM RESTART if PIP has halted. 7. EXAMPLES a. To reproduce an ASCII tape: T... PPu (A) ... .-uPR; Transfer to the paper tape punch from the paper tape reader in lOPS ASCll mode. b. To list an ASCII tape: T u TTu(A)u'-u PR; c. To combine 3 binary subprogram tapes into one tape: TuPP ... (BW)u 4 -u PR,,; Since the W switch is on, the 3 binary tapes will be combined into one file, with the intermediate EOF's deleted. The final EOF is retained. This provides a very convenient method of creati ng a Library fi Ie. d. To verify a binary tape: Checksum and Parity verification will be performed on the input binary tape. There will be no output. If a parity error occurs, the following message is typed: I NPUT PARITY ERROR If a checksum error: I NPUT CHECKSUM FAI LURE e. To check parity: Transfer files from paper tape to paper punch in ASCII mode with G switch to check the bad pari ty . For actions to be taken if any bad parity is encountered, refer to the explanation for G switch. f. To reproduce a binary tape: Tu Pu (B)u'- u PR~ Transfer files from paper tape reader to paper tope punch in Binary mode. 9 g. To reproduce in Image mode: Tu PP u(l) ...4-u PRJi Transfer files from paper tape reader to paper tape punch in image ASCII mode. Thil is the only way to reproduce a tape with channel 7 punches. h. To segment a tape: SuTAGA, TAGB, TAGC ~ Sets up the segmentation points. Tu PP , , , (A Y) . . - PR ; Transfers from paper tape reader to paper tape punch, providing EOT and blank tape just before each indicated tag. P is output by PI P at the end of each segment. When ready to conti nue, type control P (.P) .. 10 __ 1. EDITOR LOADING INSTRUCTIONS' Put the Editor Tape in the reader, depress the tape-feed control to clear the end-of-tape flag, set the address swi tches to 17720 (8K), depress I/ O RE SET and then READ IN. When the Edi tor is in core, it indicates its readiness to accept a command (on the same line as the » by outputting on the te lepri nter~ EDITOR > It is initially in Edit Mode. One may either create a file or edit an existing file. 2. 3. GENERAL COMMAND CHARACTERS RUBOUT (echos \) " delete single character CTRL U (+) (echos@) delete entire line CTRL P (echos+P) restart the edi tor COMMAND STRING Not applicable 4. OPERA 11 N G PROCEDURE S Editing Operation 1: Creating a file (When Editor is brought in core, it is in Edit Mode) User types in ACTION EFFECT # INPUT Mode is changed from Edit to Input 1. ,.." • 2. Content of the program (each line is terminated by~ ) 3. * (necessary before close) "".' Punches out previous line typed. Li ne typed in is processed. EDIT Change from I npu t to Edi t Mode. > punches blank tape EDITOR > 11 Finishes the current file. Editing Operation 2: Modifying an existing file a. Pu t the source tape in the reader b. Depress tape-feed control c. Type in any command desired. See summary of Edit commands listed below. SUMMARY OF EDITI NG COMMANDS COMMAND ABBREVIATION ACTIVITY File Housekeeping Requests n/a Terminate editing on input files. FIND string F Bring f.irst line beginning with "string: to work area. LOCA TE string L Bring first line containing "string" to work area. NEXT N Bring next consecutive line to work area. BOTTOM B Bri ng last line to work area. TOP* T Reset pointer to beginning of block. PRINT p Pri nt the current line on the Teletype. . M Perform a block transfer of several lines in the buffer. CLOSE Locative Requests Manipulative Requests MOVE TAGl TAG2 TAG3* DELETE Discard the current line. RETYPE string Replace current Ii ne wi th "stri n9" . INSERT string Add "string" as a complete line, after (below) the current line. CHANGEu/stri ng 1/string2/ C Replace, in the current line, the first occurrence of "stringl" with "string2" OVERLAY o Replace multiple lines. APPEND string A Add "string" of the rightmost · end of the current line. *May be used only with BLOCK mode ON. 12 I ABBREVIA nON COMMAND ACTIVITY Mode Control VERIFY {ON OFF V Set verify mode to print (ON) or ignore printing (OFF) lines after processing CHANGE, LOCATE, FIND and BOTTOM requests. BLOCK { ON OFF n/a Set program to operate in block mode (ON) or in line-by-line mode (OFF). BRIEF { ON OFF n/a Set brief mode to print truncated (ON) or full (OFF) lines. READ* n/a Fill block buffer from input file. WRITE* n/a Add block buffer to output file. GET* G Add I ines from subsidiary input device after (below) current line. S _ Set total lines to occupy block buffer. Input/Output Requests Miscellaneous Requests . SIZE* INSERT 5. Change mode to input. ERROR CONDITIONS AND RECOVERY PROCEDURES a. END OF FI LE REACHED BY: NEXT n Results if the command results in the pointer moving past the last line of the file or buffer. a) If editing in line by line mode, use command CLOSE and reload the input tape. b) If in block mode, move the pointer to the top of the buffer _(T~ ). b. END OF FILE REACHED BY: PRINT n For recovery, do exactl y as above. c. END OF MEDIUM REACHED BY: GET n - If the end-of-medium condition is encountered on the subsidiary input dey ice be fore n I ines are read. The pointer remains at the last line read. *May be used only with BLOCK mode ON. 13 Put the original paper tape back in the reader where it left off and continue editing. d. NOT A REQUEST P3~ Blank required between command and agreement. e. NOT A REQUEST 04''} u • is not recognized by Editor as a symbol with correct counter va Iue • f. lOPS 4 Device not ready: ready device and type control R (.R) g. lOPS 00-30 See Restart Procedures. 6. RESTART PROCEDURES CTRL (+P) restart editor if running. See Appendix 5 for operation of SYSTEM RESTART if EDITOR has halted 7. Examples: Purpose Original Desired Change Correct Format Command (user types in) To change 1 character in a word JMP TAG1 · JM5 TAG 1 C u /P/5/ To eliminate 1 character in a word JM5* LOOP JMS LOOP or To add a string of characters at ·the end of a line --...j DAC CNTR u ....jDACuCNTR/counter check To print the current line To read the next line To change mode (from edit to input or vice versa) CLOSE should always be the lasl command issued to complete editing. How to Use BLOCK MODE: User types in: BLOCKuON; Set up Mode SizeuN~ N == number of lines in block REAOJl N lines are brought in core 14 C u /*// C..,/5*/S/ Au/counter check WRITE; output all I ines on to paper tape punch BLOCK OFF~ back to line by I ine editing 15 7 TO 9 CONVERTER LOADING INSTRUCTIONS Put the paper tape Converter in the reader, push the tape-feed control to clear the end-oftape flag, set the address switches to 17720 (8K), depress I/O RESET and then READ IN. When the Converter is ready to accept a command string, it types: 7-TO-9 CONVERTER > 2. 3. . GENERAL COMMAND CHARACTERS I RUBOUT (echos \) Delete last character in command string - may be repeated n timeto .delete n characters. (CTRL) U (+) (echos@) Delete entire line. ecTRl) P (echos4P) a) Reinitialize converter. b) Resume operation after placing new tape in reader COMMAND STRING The format expected by the Converter command string processor is as follows: Options L,A, R, E, Tn File Name .... 4t--- fiLE i tlT 0' 4.output program name where L == listing A == insert .ABS pseudo op R == remove origin settings E • EOT instead of .END T combine input tapes n == decimal number of input tapes • Terminator mode . ~ Halt after converting. • return to the converter to perf;lft more conversions, types 7-TO-9 CONVERTER > and waits for next string -. I..'~ Options may be used in any combin?,"ihn, (or none at all). The options desired moy appeCi in any order, separated by commas and terminated by . - . If no options are wanted, . - i s sufficicrl. Rubouts may be used to delete unwanted characters, and to delete entire I ines, control U (+U) prior to typing the command string terminator. ·Ifan error in the command string is detected, theconverlel types: COMMAND STRING ERROR > and waits for a new command string. 16 ' 4. OPERATING INSTRUCTIONS The input tape to be converted must be ready in the reader (push the tape-feed control to clear the end-oF-tape flag) before the command string terminator is typed. When the end of the input tope is reached, the converter will punch a few inches of blank tape, then do one of the following: a. If a carriage return was used in the command string, the converter re-initializes, types out 7-TO-9 CONVERTER > and wa i ts for another command stri ng. b. If an ALT MODE was used in the command string, the computer halts. If the Tn option has been used to combine a number of tapes into one tape, the converter will type.P at the end of each tope except the last. Place the next tape in the reader, push the tape feed control to clear the end-offlag and type control P. Note that the Converter does not punch cny blank tape at this time. i 5. 6. ERROR CONDITIONS COMMAND STRING ERROR Retype command stri ng. lOPS 4 Device not ready, possibly punch out of tape, make device ready and type control R (tR) lOPS 00 - 30 See SYSTEM RE START procedure RESTART PROCEDURE «:TRO P (+P) reinitialize See Appendix 5 for operation of SYSTEM RESTART if the converter has halted. 7. EXAMPLES To convert a single paper tape to be assembled in the absolute mode with no listing, the command string would be A~NAMEJJ To combine three tapes into one ending with .EOT, to be assembled relocatably (but with locations settings) and to obtain a listing; the cOmmand string would be: L, E, T34- NAME; 17 _LINKING LOADER 1. I LOADING PROCEDURE Place the paper tape Linking Loader in the reader, push the tape feed control to clear the end-of-tape fl~g, set the address switches to 17720 (8K), depress I/O RESET, then READ IN. When the loader is ready, it types: LOADER > 2. GENERAL COMMAND CHARACTERS Delete last character typed. n rubouts may be used to delete n 'characters within a program name. RUBOUT continue loading start user's program 3. COMMAND STRING The command string may have several different forms as fol~ows: (The >'s are supplied by the louder.) >NAME1, NAME2, NAME3(© > NAME1; >NAME2~~ >NAME3 ~ >,,~ ~ It is important to accurately specify the number of programs (n) to be loaded with n-1 com~.cl . or carriage returns before the Alt Mode. 4. OPERATING PROCEDURES Place the main program in the reader, push the tape feed button to clear the end-of-tape flag, then enter the command string. When the main program has been loaded, the loader will type+P. Place any subroutines to be loaded in the reader, push the tape feed button, and type control P. When all subroutines have been loaded,place the I/O library (tape] of 3) in the reader, push the tape feed button, and type control P. 18 MACRO programs (that do not require programs from the FORTRAN library) If the loader has not been satisfied at the end of the I/O library, place the short EOF tape (included with library tape) in the reader, push the feed button and type control P. FORTRAN programs (and MACRO programs that require programs from the FORTRAN library) After the I/O library has been read, load the FORTRAN library (tapes 2 & 3) in the same manner. (Tape 3 includes EOF) If the loader is not satisfied by the I ibrary tapes, a subroutine has been omitted. The loader types out the names and addresses of all programs and library subroutines loaded. A. LOAD 3 error message and a zero address indicates a missing subroutine. (If this happens, it is necessary to reload the LOADER.) When loading has been successfully completed, the loader types+S. Ready all I/O devices needed by the user program and type control S to start execution. 5. ERROR MESSAGES .LOAD .LOAD Memory overflow 2 .LOAD 3 Unsatisfied global symbol (missing program) .LOAD 4 Illegal .DAT slot request by user program 4 Dev ice not ready. Ready dev ice and type • R (controIR) .IOPS .IOPS 00 - 30 6. Input data error Unrecoverable I/O error RESTART PROCEDURE None available, LOADER must be reloaded. 7. EXAMPLES LOADER >EX1 (alt mode) EX1 17365 +S Type control Sto start program. LOADER > {alt mode} EX1 ts 17365 Program name not needed with paper tape input to loader. 19 LOADER >£X2, SUB {alt mode} 17656 EX2 +p+p SUB Place subroutine in reader and type control P. 17613 4P+P +P+P .DA 17544 BCDIO STOP SPMSG FlOPS OTSER REAL 14551 14536 14442 13712 13604 12651 +P+r +S Place I/O I ibrary in reader and type control P. Place FORTRAN I ibrary tape 2 in reader and type control P Place FORTRAN I ibrary tape 3 in reader and type control P NOTE After placing tape in reader, push the tape feed button to clear the end-of-tape flag. First+P is signal to load next tape. Second.P is acknowledgement of user typing control P. LOADER >, {alt mode} EX2~ 17656 +P4P SUB .P4P 17613 .DA 17544 BCDIO STOP SPMSG FlOPS OTSER REAL 14551 14536 14442 13712 13604 12651 Program names not needed with paper tape input to loader. 4 P4P +p+p +S LOADER Carriage return may be used in place of comma. >£X2 >SUB EX2 P P SUB PP pP .DA PP BCDIO STOP SPMSG 17656 17613 17544 14551 14536 14442 20 FlOPS OTSER REAL +S 13712 13604 12651 LOADER > EX2 17656 .P~ tptp t P.P BCDIO STOP SPMSG FlOPS OTSER REAL SUBROT . ~LOAD 3 14663 14650 14554 14024 13716 12763 00000 The subroutine was omitted. Unsatisfied global symbol • 21 1. LOADING PROCEDURES Place paper tape DDT (which includes the Linking Loader) in reader, push tape feed button to clear end-of-tape flag, set address switches to 17720 (8K), push I/O RESET, then READ IN. When the tape has been loaded, DDT types: LOADER > DDT then waits for the user's command string to load his program to be debugged. 2. 3. GENERAL COMMAND CHARACTERS RUBOUT delete last character typed (during load phase only) CTRL P (echostp) during load phase, continues loading with new tape CTRL T (echostT) restart DDT or bypass loading COMMAND STRING - LOADER PHASE The command string may have several different forms as follows: (the >IS are supplied by loader portion of DDT). tAtt\ > NAME!, NAME2, NAME3 ~ 0It'\ > NAME1; , ,~ > NAME2,l >NAME3 tAit\ ~ It is important to accurately specify the number of programs (n) to be loaded with n-1 CO~~-.I or carriage returns before the AL T MODE. 4. OPERATING PROCEDURES' Place the main program in the reader, push the tape feed button to clear the end-of-tape flag, then enter the command string. When the main program has been loaded, the loader will type+P. Place any subroutines to be loaded in the reader, push the tape feed button and type control P (+P) • . When all subroutines have been loaded, place the I/O library (tape 1 of 3) in the reader, push the tape feed button, and type control P (+P). 22 MACRO programs (that do not require programs from the FORTRAN library) If the loader has not been satisfied at the end of the I/O library, place the short EOF tape (included with I ibrary tape) in the reader, push the feed button, and type control P. FORTRAN programs (and MACRO programs that require programs from the FORTRAN library) After the I/O I ibrary has been read, load the FORTRAN I ibrary (tapes 2 & 3) in the same 'manner (tape 3 includes EOF). If the loader is not satisfied by the library tapes, a subroutine has been omitted. The loader types out the names and addresses of all programs and I ibrary subroutines loaded. A. LOAD 3 error message and a zero address indicates a missing subroutine. (If this happens, it is necessary to reload DDT.) When loading has been successfully completed, DDT types: DDT > Debugging may now begin. Following is a summary of DDT commands. For detailed information on the operation of each command, see the DDT manual. SUMMARY OF COMMANDS Linkage Characters + Arithmetic plus Arithmetic minus (space) Field separator Breakpoints k nil Insert breakpoint at location k, assign number n (1-4) nil Remove breakpoint number n Remove all existing breakpoin!s Restart from breakpoint n Restart from breakpoint, wait n times before reentering breakpoint +T Interrupt processing, go to DDT-9 Examinations and Modifications k/ Open location k ; (carriage return) Close the location t (I ine feed) Close the location, open next location ~ ~Z (up arrow) Close the location, open the preceding location. (control Z) Close the location, open addressed location, continue original sequence 23 • A (control A) Close the location, open addressed location, start new sequence • • X (control X) Close the location, open the location addressed by 15-bit transfer vector, start new sequence NUM$ Type contents as 6-digit octal numbers TV$ Type contents as transfer vectors (15-b i t addresses) SYM$ Type contents as symbolic instructions (assumed if unspecified) Retype in alternate mode (NUM$, SYM$) Retype as transfer vector REL$ Type addresses as relative to defined symbols (assumed if unspecified) RLC$ Type addresses as relocatable numbers ABS$ Type addresses as absolute numbers Starts and Restarts Starts user1s program at normal starting point kl Starts user1s program at location k Restarts user1s program from breakpoint nl Restarts user1s program from breakpoint, waits n times before reentering breakpoint T (control T) I nterrupt processing + Searching Operations ku EQ $ Search for words equal to k ku UN$ Search for words not equal to k k u ADR$ Search for instructions with effective address equal to k Special DDT -9 Locations AC$ Holds AC at a breakpoint LNK$ Status of Link at a breakpoint MSK$ Contains search mask LO$ Lower I imit of search HI$ Upper limit of search PAS First unused location in patch area AX$ Number of auto-index used by breakpoints RF$ Current relocation factor SA$ Normal starting address Bn$ Address of breakpoint n 24 Symbol Definition (s) Assign symbol s to the current location k(s) Assign symbol s to location k Patch File Output PFO$ Patch file output kuPFO$ Single location k patch file output 5N$$ Save new symbols PFE$ Close patch file output Patch File Input ?FI$ Read patch file Coresident Subroutines (HDRS Use symbol table and relocation factor of subroutine k tDR$ Use symbol table and relocation factor of main program Miscellaneous Features )S Contents of currently open location Address of currently open or most recently opened location Bypdss mnemonic instruction lookup (1 Execute the instruction k U Cancel the line Interrupt processing ERROR CONDITIONS a. loader errors .LOAD 1 .LOAD 2 .LOAD 3 .LOAD 4 b. memory Qy';rflow input <j.a·t'6 error unsatisfied global symbol (missing program) illegal .DAT slot request by user program DDT running errors OVERFLOW too many new symbols defined - current entry ignored ERROR read error on patch file input - all patches loaded before error are good ? general error indicator - current entry ignored undefined symbol address above core i ncorrec t command illegal character 25 c. 6. I/O errors .1 OP S 4 dev ice not ready - ready dev ice and type control R (4R) .IOPS 00 - 30 unrecoverable during loading phase, returns to DDT during debug prc~~ RESTART PROCEDURE CTRL T (+T) Restarts DDT If halted, DDT must be reloadeq. 7. EXAMPLES LOADER >EX1(alt mode} EX1 14455 DDT > LOADER >EX2, SUB (alt mode) EX2 14746 +p4p SUB ~~ .DA Place subroutine in reader and type control P. 14703 14634 4p4P BCDIO STOP SPMSG FlOPS OTSER REAL PIace I/O library in reader and type control P. Place FORTRAN library tape 2 in reader and type control P. Place FORTRAN library tape 3 in reader and type control P. 11641 11626 11532 11002 10674 07741 NOTE After placin!;1 tape in reader, push the tape feed button to clear t~{ end-of-tape flag. First+ P is signal to load next t9P~ • Second is acknowledgment of user typing control P. +p DDT > LOADER > (alt mode) EX1 Program name not needed with paper tape input to loodtr. 14455 26 DDT >NUMS >ACS/ LNK$/ MSKS/ LOS/ HI$/ PA$/ AX $/ RFS/ SA $/ B1S/ B2$/ B3$/ B4$/ 000000 000000 777777 014455 015007 002420 000017 014455 414455 000000 000000 000000 000000 >BEGIN/ 000776 >SYM$ >./ CAL +776 BEGIN+l/ BEGIN+2/ BEGIN+3/ BEGIN+4/ READ-5/ READ,..4/ El'm 12/ READ-3/ CAL+l CAL+14455 CAL LAC END+l JMS TYPE LAC END+2 LAW 17774 DAC COL BEGIN END+15 BEGIN == == BEGIN > 27 Low limit of program. High limit of program. Low lim i t of avo i lable memory. Relocation factor. Start i ng address. APPENDIX 1 DEVICE ASSIGNMENTS Device Assignment Tables (. DAT) In the I/O Monitor version, the .DAT slot assignments are permanent and cannot be changed. The negative • DAT slots are those used by the system and the user need not be concerned with them. The positive .DAT slots, however, are user .DAT slots. When writing programs which are to be run within the system, the user should be careful to use the correct .DAT slot numbers. DEVICE HANDLER TTY Printer (TTA.) Teleprinter Output 2 TTY Keyboard (TTA.) Keyboard Input 3 Paper Tape Reader (PRA.) Input 4 TTY Printer (TTA.) listing 5 Paper Tape Punch (PPA.) Output 6 Paper Tape Reader (PRA.) Scratch 7 Paper Tape Punch (PPA.) Scratch 10 Paper Tape Reader (PRA .) Scratch .DAT SLOT USE For example, if the user desires to output to the teleprinter from a FORTRAN IV program, the WRITE statement should read: WRITE (1,10), where 1 is .DAT slot 1 and 10 is the FORMAT statement number. 28 APPENDIX 2 PDP-9 ASCII CHARACTER SET Listed below are the ASCII characters interpreted by the PDP-9 Monitor and system programs meaningful data input or as control characters. 00-37 40-77 100-137 140-177 ASCII CHAR. ASCII CHAR. ASCII CHAR. ASCII CHAR. 0 NUL SP 1 SOH ( A) "- 0 A 1 " B 2 H C 3 4 $ D 4 5 % E 5 6 & F 6 7 I G 7 10 ( H 10 2 3 ETX ( C) 11 HT ) I 11 12 LF * J 12 13 VT + K 13 14 FF I L 14 15 CR - M 15 16 . N 16 17 / 0 17 20 DLE ( P) 0 . ,f 20 21 ( Q) 1. Q 21 22 DC2 ( R) 2 R 22 23 DC3 ( S) 3 S 23 24 DC4 ( T) 4 T 24 25 NACK ( U) 5 U 25 26 6 V 26 27 7 W 27 8 X 30 9 Y 31 : Z 32 30 CNCL ( X) 31 32 SS ( Z) 29 *33 00-37 40-77 100-137 140-177 ASCII CHAR. ASCII CHAR. ASCII CHAR. ASCII CHAR. ESC 34 < 35 = 36 37 RS ( ) ESC ; 33 34 ESC > 36 1\ or. delete (RO) ? 35 37 *Codes 33, 173, 175 are interpreted as ESC (All Mode) and are converted on input to code 175 by lOPS handlers. 30 APPENDIX 3 MACRO-9 ERROR DIAGNOSTICS Flag Meaning A Error in direct Symbol Table assignment, assignment ignored. B Memory Bank error. D The statement contains a reference to a multiply defined symbol. It is assembled with the first value defined. E Erroneous results may have been produced. Will also occur on undefined .END value. Line ignored. (Redundant Pseudo-op) L Literal phasing error. M An attempt is made to define a symbol which has already been defined. The · symbol retains its original value. N Error in number usage. P Phase error. PASS] value does not equal PASS2 value of a symbol. PASS] value will be used. Q Questionable line. R Possible relocation error. S Symbol error. An illegal character was encountered and ignored. U An undefined symbol was encountered. W Li ne overflow duri ng macro expansion. x Illegal usage of macro name. 3] APPENDIX 4 MACRO-9 PERMANENT SYMBOL TABLE EAE Type KE09A Mcmorz: Reference 000000 040000 100000 140000 200000 240000 300000 340000 400000 440000 500000 540000 600000 CAL DAC JMS DZM LAC XOR ADD TAD XCT ISZ AND SAD JMP Operate OPR NOP CMA CMl OAS RAl RAR HLT XX SMA SZA SNL SML SKP SPA SNA SZl SPl RTl RTR Cll STL CCl RCl RCR CLA CLC LAS lAT GlK lAW 740000 740000 740001 740002 740004 740010 740020 740040 740040 740100 740200 740400 740400 741000 741100 741200 741400 741400 742010 742020 744000 744002 744002 744010 744020 750000 750001 750004 750004 750010 760000 EAE OSC OMQ CMQ DIV NORM lRS llS AlS lACS lACQ ABS DIVS ClQ FRDIV lMQ MUl IDIV FRDIVS MUlS IDIVS NORMS lRSS llSS AlSS GSM 640000 640001 640002 640004 640323 640444 640500 640600 640700 641001 641002 644000 644323 650000 650323 652000 653122 653323 654323 657122 657323 660444 660500 660600 660700 664000 I/O States lOT IORS 700000 700314 f InterrlJpt "IOF ION CAF " 700002 700042 703302 Automatic Priority Interrupt. Type KF09A DBK DBR SPI ISA 703304 703344 705501 705504 32 Memor~ Extension Control Type KE09B SEM EEM lEM 707701 707702 707704 Memor~ Protect T}::ee KX09A MPSK MPLU MPlD MPEU 701701 701702 701704 701742 APPENDIX 5 SYSTEM RESTART SYSTEM RESTART can be used to attempt to restart a system program {excluding DDT and the oder} which has halted during operation. It is most easily used if the symbol ic program (SYSTEM :START), shown 011 the following page, has been punched onto tape and assembled by MACRO-9. If is has been done and a binary tape is available, proceed as follows: 1. place binary tape in reader 2. push tape feed button to clear end-of-tape flag 3. set address switches to 17720 4. press I/O RESET 5. press READIN If a binary tape is not available, SYSTEM RESTART may be entered through the AC switches, ;ing the deposit key. When this has been done, proceed as follows: 1• set address switches to 17720 2. press I/O RESET 3. press START If the restart attempt is successful, the effect will be the same as a control P restart. Further 'starts are possible without reloading SYSTEM RESTART by the following procedure. 1. set address switches to 17720 2. press I/O RESET 3. press START If the restart attempt fails, it will be necessary to reload the system program tape. Since a halt usually indicates a rather serious problem, SYSTEM RESTART will often fail to :start the program. Two instances in which it will work 1. When the user has accidentally typed an ALT mode instead of a carraige return as a command string terminator, and wishes to regain the program for another run. 2. After an lOPS 3 error if the offending device flag has been removed. 33 17720 17720 17721 17722 17723 17724 17725 17726 17727 17730 17731 17732 17733 17734 707702 237734 057731 703302 700042 237732 705504 177733 637731 000000 000006 001413 000632 017720 D A B C E 34 • TITLE SYSTEM RESTART .FULL .LOC 17720 EEM LAC* E DAC A CAF ION LAC* B ISA DZM* C JMP* A 0 6 1413 632 .END D NO ERROR LINES APPENDIX 6 EXPLANATION OF lOPS ERROR CODES :RROR CODE ERROR ERROR DATA Illegal Function CAL CAL address CAL * illegal CAL address 2 .DAT slot error CAL address 3 Illega I interrupt I/O status register 4 Device not ready (type control R when ready) 5 Illegal. SETUP CAL 6 Illegal handler function 7 Illegal data mode CAL address 30 API software level error API status register 0 CAL address 35 APPENDIX 7 FORTRAN IV ERROR LI ST These letter-coded error messages apply to F4 V2A and all versions of F4 thereafter and all versiOO1 o.f F4A. Cause Error Code X Syntax error Statement cannot be recognized as a properly constructed FORTRAN IV statement. V Variable/constant mode error Illegal mode mixing. Missing constant, vario!:.!c C~ exponent, or illegal match ing of constants or VOt iabies in a DATA statement. N Statement number error Phase error, number more than 5 digits, no sfatCr'"d\' number where one is re.quired, statement shouldn't be labeled or doubly defined statement numbers. S Argument/subscript error Missing argument or subscript, illegal use of wbscripts, illegal construction of subscripted variac!.:, more than 3 subscripts or stated number of subscriptl does not agree with declared number . F FORMAT statement error Illegal FORMAT specification or illegal construcricm of FORMAT statement. Charac ter/statement/ term error Illegal character, unrecognizable statement, illt!J:1 statement for program type, statement out of orci\.'t or improper statement preceding END stotement. D DO loop error Illegal DO construction or illegal statement lerrninoting DO LOOP. T Table overflow Symbol/constant/arg (I}/OP(l) table limits excccdtJ. L Nesting error Illegal nesting or DO nesting too deep. M Magnitude error Program exceeds 8190 words, maximum number of dummy arguments or EQUIVALENCE classes excec.H:4 or constant/variable exceeds specified limits. C COMMON/EQUIVALENCE/ DIMENSION/DATA Statement error Illegal construction of statement, illegol EQUIVALENCE relationships, illegal COMMON declorotion or non-common storage declared in BLOC K DATA subprogram. E FUNCTlON/SUBROUTINE/ EXTERNAL/CALL statement error Illegal use of FUNCTION/SUBROUTINE nome, Ot.ir of order, or illegal variable for EXTERNAL declaration. H . Hollerith error Hollerith data illegal in this statement or illegal :.i Hollerith constant. ~ . 36 APPENDIX 7A FORTRAN IV ERROR LI 5T lis list of error messages applies of all versions of F4 prior of V2A. Tor Code Cause 001 Improper statement preceding END statement. 002 FUNCTION/SUBROUTINE name not used or used improperly in a subprogram. 003 Variable required. 004 Positive non-zero constant required. 005 Symbol-constant table I imits exceeded. 006 Statement number has more than 5 digits. 007 008 Unsigned simple integer argument required. 17 Integer value greater than (2 -I). 009 Magnitude of number (ignoring decimal point and/or exponent) greater than (2 010 Array element (function reference) and next argument not separated by comma. 012 Exponent m issi ng from numeric fie Id. 014 Open parenthesis in subscript. 015 Binary operator used in unary sense or missing argument. 016 Additional grouping parenthesis not allowed. 017 Subscript I ist terminated before last argument obta ined. 018 Too many right parenthesis. 019 Argument follows converted argument {no operator separating them}. 021 E or D in numeric field after exponent has been processed. 023 Format descriptor character used in non-format statement. 024 Hollerith data illegal this statement. 025 Non-integer constant precedes Hollerith constant. 026 Length of Hollerith constant exceeds range (O<.x <6). 027 Hollerith constant contains statement termination character. 030 Symbol ic name exceeds 6 characters. 031 Limit on number of nested functions exceeded. 032 Simple variable delineated by left parenthesis. 033 Subscripted variable used as subscript. 034 Unrecognizable logic term •. 036 Logical. NOT. used as binary operator or logical constant used as a binary operator. 037 Illegal character. 37 35 - 1). Error Code Cause 040 Adjusted floating point exponent exceeds 76. 045 Subscript expression not delimited by"," or "}". 050 Arg (I), op (I) table overflow. 051 Unsubscripted array reference used as a variable. 052 Function name used as a variable. 053 Comma used other than as parameter separator. 054 Function or array name used in an expression representing a function parameter. 055 Expression used as an assignment variable. 056 Expression contains uneven number of parenthesis. 060 Illegal mode mixing. 063 Signed assignment variqble. 069 Doubly defined statment numbers or phase error. 070 Illegal statement for BLOCK DATA program. 071 Statement not a DO or pO illegal as True statement for logical IF. 072 Illegal logical IF true statement. 074 Unrecognizable statement (first 3 characters). 075 Unrecognizable statement (4-n characters). 076 Statement out of order. 077 Statement shouldn't be labeled. 078 First character following READ or WRITE not a left parenthesis. 079 Illegal format specification in READ or WRITE. 080 Binary WRITE has no list. 081 Illegal list element separator. 082 Illegal implied DO construction. 086 DO nesting too deep. 087 Missing DO parameter. 088 Illegal DO parameter construct ion. 089 Illegal statement type terminated DO. 090 Improper DO nesting~ 091 Illegal character following I/o unit specification. 092 Illegal character following FORMAT spec ification. 095 Name previously appeared in a specification statement. 096 Statement improperly del imited. 097 Illegal array declaration - DIMENSION statement. 38 · Error Code Cause 098 Array size greater than 78192 - DATA spec ification statement. 100 Improper subscript I ist delimiter in a DIMEN SiaN statement. 101 More than 3 subscripts (dimensions). 102 I nteger argument not a constant. 103 Integer constant not less than 8192f' 104 Integer constant negative. 105 FORMA T statement has no stqtement number. 106 Illegal FORMAT specification. 114 COMMON block name has illegal delimiter (not I). , 115 Name declared as COMMON Block name previously declared otherwise. 116 COMMON block size exceeds 8190 words. 117 DeclC,lred COMMON . variabl~is a dummy, functton, or already in COMMON. 118 ASSIGN stotement missing "TO". 120 Computed GOTO statement \l,umber list members not delimited. 121 Computed GOTO statement number list pot delimited. 123 Assigned GOTO statement nu.mber I ist not preceded by left parenthesis. 124 Assigned GOTO statement nlJmber list not delimited.- \ 26 DATA/EQUIVALENCE variq~le is a dvmmy variable. 127 DATA/EQUIVALENCE variq,ble is a fvnction nafTle. 128 DATA/EQUIVALENCE simple variable subscripted by more than one number. 129 DATA/EQUIVALENCE array element greater than 8192. 130 Missing right or redundantl~ft parenthesis in FORMAT statement. 131 Stated number of subscripts goes not agree with declared number. 132 EQUIVALENCE closs not started with left parenthesis. 136 EQUIVALENCE class improperly delimited (no right parenthesis). 137 Maximum number of EQUIVA~ENCE classes exceeded. 138 Illegal EQUIVALENCE relationships. 139 IlIegaJ extension of common block caused by EQUIVALENCE relationship. 140 Illegal variable for EXTERNAL declaration. 142 Program size exceeds 8190 words. 143 Non-common storage declared in BLOCK DATA subroutine. 144 I F expression not terminated by closing parenthesis. 145 No comma separating statement numbers - IF statement. 147 No statement number where one is required. ; , 39 Error Code Cause 148 Referenced statement number does not appear as a statement label. 149 Illegal statement function nome {used twice or is external}. 150 Delimiter following statement function dummy argument list not "=". 151 Function statement out of order (or more than one). 152 FUI'ICTION name not followed by argument list. 153 Dummy variable previol)sly declared as something else. 154 Dummy argument I ist not encloseq in parenthesis. 155 Max imum number of dl,Jp1my arguments exceeded. 156 STOP/PAUSE statement constant contains 0 non-octal digit. 157 STOP/PAUSE statement constant contains too many digits. 158 DATA statement variaqir is 1~A:orn!TIon" but "data not "block data". 159 DATA statement is "blc.U::k da'ta" bl.lf variable is not "common". 160 DATA statement variables no1 delimited by a slosh. 161 DATA statement argum~pt nof q rpnstant. 162 Mode of variable and corresponding constant disagree in a DATA statement. 163 DATA statement constqnts not separated by a comma {may indicate more variables than constants}. 164 Two successive asterisk~ used as operators in a DATA statement. 165 Constant preceding asterisk is not integer in a DATA statement. 167 More constants than vqriablesin 0 DATA statement. 168 RETURN statement in rnpin-boqy program unit (not subroutine). , 169 CALL statement - name is not a function nome. 40
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies