Digital PDFs
Documents
Guest
Register
Log In
MAINDEC-08-D2A
December 1965
10 pages
Original
0.3MB
view
download
Document:
maindec-08-d2aa-d
Order Number:
MAINDEC-08-D2A
Revision:
Pages:
10
Original Filename:
https://svn.so-much-stuff.com/svn/trunk/pdp8/src/dec/maindec-08-d2a/maindec-08-d2aa-d.pdf
OCR Text
u IDENTIFICATION u u Produc+ Code: MAINDEC-08-D2AA-D Product Name: PDP-8 Teletype Reader Test Date Created: April Maintainer: Diagnostic Group Author: M. Horovitz Previous Code: MAINDEC 810 1`2,1965 un BEE MAI.NDEC-08-D2AA-D I. ABSTRACT. MAINbE.C-08-D2AA tests the performance of the Teletype Model 33 Perforated Tape Reader, using the reader to scan a closed-loop I.est tape punched with alternating groups of the charact.er codes 000 and 377. Each character is rested for bits either dropped or gained while reading; each group of characters is checked for characters missed entirely or read more than once. An Auxiliary Punch program (see paragrciphs 3.3. I .and 5.1.2) is qvailable to produce the tape used in the test. 2. `REQulREMENTS St,orage MAINDEC-08-D2AA requires the RIM Loader to be in memory locations 7756-7776 octal . The test progrtan? occupies memory loc.qtions 0001-OT 22 octal . Equipment Teletype Model 33 Keyboard/Printer with tape punch and reader. u 3. USAGE 3.1 Loading I RIM Loader must be in memory. Wi+h +he Tape Reacler off, se+ the SWITCH REGISTER +o 7756 oc+al . Press LOAD ADDRESS, then START. Pl.aee,the MAINDEC-08-D2.AA T.est Tape in the Teletype reader, and start the reader. When loading is completed, turn off the reader and remove the program tape. 3.2 Switch Settings Starting Addresses (in octal): 0100 Auxiliary punch program 0001 Reader Test program 3.3 St.qr+-up a.nd/8r Entry 3.3.1 Au.;iliary pinch p;ogram -The Teletype reader must be off. 0100 ocfal.s. Press LOAD ADDRESS, then START. ` Set the SWITCH REGISTER to Turn on the Teletype punch. ' Allow the program to punch severcil feet of tape, then stop the computer, turn off the punch, and tecir off the tape . MAINDEC-08-D2AA-D 3.3.2 Reader Test program -Place the leading end of the test tape, (produced bythe Auxiliary Punch program) in the Teletype reader. then START. Set the SWITCH REGISTER I.o 0001. Press LOAD ADDRESS, Turn on t.he reader. 3.4 Errors in usage 3.4.1 Error stops Error C(MA) I2 00250055 Cause of Error The last character read was incorrect. The AC contains the erroneous code. The correct character is found on the test tape in the sL££gnd one pas+ the read sta+ion. If +his is 337, +he AC shows dropped bits as O's. If the correct code is 000, the AC shows spurious bits as 1 's. Character count is incorrect. The program has iust finished reading a group of 337 codes; the number of characters in this group is not identical to the number of characters in the preceding group of 000 codes. The number in the AC is the difference between the counts. The error was probably the result of a missed character or a failure in the transmission of a pulse from the reader buffer +a the AC. EE Recovery from Such Errors Recovery Error 1 To rest.art the test, press CONTINUE. 2 To restart the test, press CONTINUE. 4. RESTRICTIONS None. The test will operate on a PDP-8 of minimum configuration. 5. DESCRIPTION 5.1 Discussion 5.1.1 The Reader Test program -MAINDEC-08-D2AA tests the perforated tape reader associated with the Teletype Model 33 Keyboard/Printer. The program causes the reader lo continuously scan a specially prepared i.es+ tape and checks for +he accurate transmission of each charac+er from +he read heads into the AC. A dropped bit (0 transmitted instead of a 1 ) or a Spurious bit (1 transmitted instead of a 0) will cause the program to hall. The erroneous character will appear in the AC. 2 `.-I MAINDEC-08-D2AA-D 0 The loop contains a sequence of character codes, each of which is either 000 (no holes punched) or 377 (all holes punched). The characters are arranged as follows: A group of 000 characters is foHowed by a group containing an identical number of 377's. groups may vary. The size of each successive pair of A sample sequence is shown in section 5. T .2. The test program counts the number of characters in a group of OOO's and then decreases +his count while reading the subsequent group of 377's. reduce to 0. At the end of that group, the eounr should If it does not, the test halts; the probable cause of ei.ror is +hat the reader missed a character entirely. `..` If the count is still positive, the missed code was 377; if negative, it -was 000. In either case, the test will be restarted when the operator presses CONTINUE. 5.1.2 Auxiliarypunch program-This isa separate program within MAINDEC-08LD2AA which punches a length of tape for use in f.he main test program.` This tape contains the following pattern,, repeated as many times as desired: Tape Pattern Ocfc'l Equivalent u There is no halt in the punch program. Once started, it will run continuously until the operator stops i+, allowing him I.o produce as long a testtape as he wishes. 5.2 Examples and/or Applications Although the primary use of MAINDEC-08-D2AA is fo test the `performance of the .tape read heads and the transmission lines between lhe read heads, reader buffer, and AC, it can also be used as a quick check of the tape advance mechanism. If, aft.er a few feet of tape have been read, there is evidence of wear or of enlarged feed holes, there may be a mechanical malfunction. Normally the test would be used as a preventive maintenance procedure or when program operation tends I.o. indicate reader malfunction. L.I 3 MAINDEC-08-D2AA-D 6. METHODS At the start of the lest, the program insures that the tape is positioned at I.he beginning of a group of 000 characters; it examines the tape until a nonzero character appears, then, continues to read until the first 000 character is read. incremented. The next character is read and tes+ed. to determine if the two are identical . and rested. This character is tested for spurious bits and the counter is 11 is then compared with the previous character If so, the count is incremented, and the next character is read This procedure cont.inues until a character is read which differs from t.he previous one. At this point, two possibilities become apparent: If the previous character was OOO\and the current one is 377, the character count is decremented, and the next character is read and rested. The t'est proceeds until the next change of character. If I.he previous character was 377 and the current one is 000, the count is checked for missed characters. If the count is 0, there has been no error and the test continues. the program halts with the value of the count in t.he AC. If t.he count is not 0, If a line was missed while reading OOO`s, there will be an excess of 377's, and the count will be negative. If a line was missed while reading 377's, lhere will be a deficiency of these, and the count will be positive. In each case, the absolute value of the count corresponds to the number of lines which were missed. Example: While reading a group containing I.hree ooo characters, the reader failed to transmit the third one, so that t.he count remained at 2. RE The subsequent group of +hree 377's was reacl correctly, so +hat when the last of these was read, the count became -I. The program stops with 7777 (= -1 ) displayed in the AC lights. 7. PROGRAM LISTING /MAINDEC-08-D2AA: PDP-.8 TELETYPE READER TEST *1 /TAPE PHASING SEQUENCE /IS CHARACTER NON-ZERO? /NO-KEEP LOOKING /YES-LOOK FOR FIRST ZERO /CHARACTER u MA.INDEC.-08.-D2AA-D /START WITH ZERO zlNITIALlzE LINE /HOLDS ISZ LINCT JIYIS READ PREVIOUS /INCREMENT CHARACT,ER couNTm LINE COUNTER WHEN 'C(TEN)=® /STORE CHARACTER JUST READ /TEST FOR NON-ZERO CHARACTER /RESULT SHOULD BE 8 IF C(TEN)=377 DCA TEN TiD IAD CTI TEN SNA CLA /IS Jpr'P 0K /YES TAD TEN /NO IT? - G0 0N - CHECK FOR ZERO /IT IS -G0 0N /ERROR: AC CONTAINS SNA. JMP ®®25 •®826 OK HLT Jlr'1P A /TRY TAD TEN /PFiEPAfiE SZA CLA 1©7© TAD ,OTl+1 1871 3¢55 TAD DCA CTl+2 .+2 /IS IT ZERO CHAR.? /NO -SET NEXT SKIP T0 /IF ZERO, NEXT SKIP IS 1'075 8©®8 TAD PREV H 5947 JMP ®@27 1©72 885® '89 6 i 7648 ®862 ©®33 ©%54 ©®55 @856 0K, /TEST TAD TEN SNA CIA 5815 1874 JMP DI 7 21 4 I CIA 7©49 CMA SAME, TAD FOR FOR /EXAil]INE COM •76`5a 1©72 C. /GET c(pREv)/c(TEii]) STATE LINE HERE ccmp. SNA SZA 0F PREVI\OuS CHAR. COUNT ONLY IF C(PREV)=C(TIM) . LINCT 3874 DCA 'LINCT 5®14 JMP D+i /IF C(TEN)=8, /IF C(TEN)=377, /NEXT /GET TEN C.LA Eu ERRONEOUS AGAIN .t /IS G0 0N DECREMENT COUNT CHARACTER HERE ONLY IF C(PREV)IS NOT= COUNT CONE C(TEN)=g? COMr5 LINCT /YES D /C(LINCT)=Zj, CONTINUE HLT /ERROR: COUNT JMPA /AC /NO-G0 DECFiEMENT -CHECK LINE CONTAINS AND COUNTER INCOR\RECT. C(LINCT), T,RY AGA.IN MAINDEC-08-D2AA-D /CHARACTER /SAVE /WAIT READING PREVIOUS LOOP SUBROUTINE CHARACTER .-1 I READ /Z'S COMPLEMENT OF 377 FOR CHAR. /SNA BIT FOR COMPARISON TEST 74®1 1© SZA CLA /COMPARISON TEST ©2]72 '8Z}73 ©®©© ®©®8 TEN, PREV, © © /HOLDS CURFiENT /HOLDS PREVIOUS ©874 ®8@8 LINCT, © /CHARACTER COUNT /AUXILIARY PUNCH *1©© INSTRUCTIO(\' CHARACTERl CHARACTER PROGftAM PAT=TEM ®180 CLL CLA Z I .L7 I CT2 LINCT /LINE ®1©2 TAD DCA 91,2)5 TAD CT2+i /PATTERN ®1©4 DCA-PAT 81©5 TAD 2„©6 HAL DCA COUNT FOR TAPE PATTERN SELECTOR PAT TEN SZL /IF /IF CMA TLS TSF JMP ©115 577 CHARACTER © CHARACTER u .-I ISZ 8117 •2' i 2 8 JMP 88 ®122 PUNCH PUNCH CLA 0116 8121 C(L)=l, C(L)=g, JMP 7764 25©7 LINCT AA /COUNT CHARACTER /NOT FINISHED /FINISHED -REPEAT /CHARACTER /PATTEFiN PA.TTERN COUNT SELECTOFi A AA a 88 COM CTI CT2 D ERRI ERR2 LI N C I 0K PAT PREV READ SAME TEN u MAINDEC-08-D2AA-D u 8. DIAGRAMS 8.1 Flow charts 8.I.I Character Read Routine 8.I.2 Auxiliary Punch Program u.I 7 MAINDEC-08-D2AA-D 8.1.3 Reader Test program EE •.L 8
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies