Digital PDFs
Documents
Guest
Register
Log In
XX-2BDBA-12
December 1965
18 pages
Original
1.8MB
view
download
Document:
maindec-826b-d
Order Number:
XX-2BDBA-12
Revision:
Pages:
18
Original Filename:
https://svn.so-much-stuff.com/svn/trunk/pdp8/src/dec/maindec-826b/maindec-826b-d.pdf
OCR Text
iDENTIFICATION 1. .2 1. PDP-8 Maindec 826-8 680 5‘8” Character Exerciser November 17, 1965 PDP 8 LIBRARY PDP-8 Maindec 826—8 Page I 2 . ABSTRACT The 680 5-Bit Character Exerciser program further verifies correct operation of the 680 Data This test assumes that the Teletype lines are full duplex. However, it the line Communications System outputs are iumpered to the line inputs, the test verifies that the input characters are received as trans— . mitted. 3. REQUIREMENTS 3.I Storage 3.I .I Exerciser Program 2‘ Address 0 Concurrent Output Test 02008 to 03778 04008 to 05358 06008 to 06I68 I0008 to I0748 2200 to 23778 2400 to 25778 I Output Data Table Concurrent Input Test Output Switch Register Routine Output Butter Input Buffer , 000I Interrupt Routine 3.I .2 Character Assembly Subroutines (List of Items) to 0004 7 _ ' TT5BGN Start of Subroutines T5IN TTI T5IBF Area Input T5OBF , ‘ Output Buffer Second T5OBF2 _ Buffer Output Butter , ’ TT5PGO Page 0 Constants TTCHAR Character Register T5AXI Autoindex T5AX2 Autoindex I I T5AX3 Autoindex I2 T5AX4 Au toindex I3 ‘ ‘ 3.2 I0 ’ Subprograms and/or Subroutines Digital-8-35-S-A 680 5-bit Character Assembly Subroutines 3.3 52008 to 55778 56008 to 64008 72008 to 75778 66008 to 67778 70008 to 7I778 0I458 to 0I768 0I778 Equipment Minimum Configuration PDP—8 680 DCS hardware (Including a 50 or 75 Baud Clock) PDP-8 Maindec 826- B Page 2 3.4 Miscellaneous The 50 or 75 Baud Clock in clock I. 4. USAGE 4.I Loading 4.I .I It the Binary loader beginning at address 7777 is in memory, go to Section 4.l .2. Binary Loader must be loaded into memory. Other- wise the RIM Loader and/or the 4.l .2 The 680 5—Bit Character Exerciser may now be loaded into memory as follows: Set 77778 in the SWITCH REGISTER Press LOAD ADDRESS Place the Character Exerciser in the keyboard reader Press START Engage the keyboard reader 4.3 Switch Settings (See Section 4.4) 4.4 Start up and/or Entry 4.4.I Concurrent Output Test Set the SWITCH REGISTER to 0200 Press the LOAD ADDRESS key Set the SWITCH REGISTER equal to the lowest line number tobe tested. Press START; the processor halts at address 0202. Set the SWITCH REGISTER equal to the number of lines to be tested. the lines selected. Press CONTINUE; the program outputs a fixed message on all ‘ 4.4.2 Concurrent Input Test Set the SWITCH REGISTER to 0600. Press the LOAD ADDRESS key. Press START; the program scans I28 lines for inputand retransmits characters on the same line as the one in which they are received. Output SWITCH REGISTER test Set the SWITCH REGISTER to I000. Press the LOAD ADDRESS key. Set the SWITCH REGISTER to the line number to be tested. Press START; the processor halts at address I002. PDP-8 Maindec 826-8 Page 3 Set SWITCH REGISTER bits 7 through II as equal to the character to be transmitted, and SWO follows: SWO-down: SWO-up: Do not test for input Wait for input and verify that it is the same character as is transmitted. (See the end of Section 4.4.I ) Press CONTINUE; ’ the program transmits a carriage return—line feed, the contents of AC switches 64 times, and then repeats. Note that since the input is two characters behind the output, the Character Assembly Subroutines) SWO may not be changed from 0 to a I It may, however, 4.5 be changed from a I Errors in to (due to double buffering of once the program is running. 0 and switches 7 through II may be altered at any time. a Usage Hardware malfunctions detected by the program result in a processor halt. a The following is list of these error halts and their meanings: 4.5 .I Address 0002 Not Clock Interrupt Either an interrupt was received from a device other than Teletype clock I, did not skip after an interrupt from clock I or the IOT 642I . 4.5 .2 Address 0307 Data Error The processor halts with a line number displayed in the AC indicating that a data error has occurred on the line. Press CONTINUE; the processor halts at address 03I2 with the character that should have been received in the AC. Press CONTINUE again, and the processor halts at address 03I5 with the character that was received in the AC. 4.5 .3 Address I055 Data Error (Output AC Switches Routine) Processor halts with the character transmitted in the AC. This could be a carriage return, in the the a line feed, or code contained SWITCH REGISTER. Press CONTINUE, and the processor halts at address I06I with the character that was received displayed in the AC. 4.5.4 Detection of an Open Input Line If the data error halt at address 03I2 is consistently executed with a specific line number input line is in a constant "SPACE" or open and the character received is always 0, it indicates that the line state. 4.5.5 Detection of a Constant "MARK” The 680 Character Exerciser was written with the assumption that the Teletype lines being Also, the program assumes that any input received during the concurrent output the line outputs are tied to the line inputs. Therefore, if there is no input on to that due the test is fact a line or any of the lines the program does not consider it an error. Assuming the test is operating with inputs tied to outputs, the only way to be sure that a line is transmitting and receiving is to open the input tested are full duplex. line in order to force a data error. Note that this procedure is likely to show up any errors in translating line numbers,- i.e., The line then is closed again and an error is in- input line I7 is opened and the processor does not halt. dicated, for example, on line 37. The malfunction is probably in the decoding of line I7. PDP~8 Maindec 826~B Page 4 Recovery From Such Errors 4.6 Pressing CONTINUE causes the program to proceed. leave some at the output lines in a “SPACE“ condition. these outputs will run free until the program continues. transmitting and receiving, It is possible that an error halt will If this happens, any Teletypes that are tied to Also, in the process of opening lines to test For it is possible to get the input of a line out of sequence with the output. In this case, it is necessary to restart the test. RESTRICTIONS 5. The Character Assembly Subroutines scan the lines in even multiples of eight lines. Thereerror could be indicated on a line. or lines that have not been selected to be fore, the in Switch Register Routine, it line I‘is selected to be run, the inputs of lines 2, run, e.g., Output and be should 3, 4, 5, o, 7, placed in the ”MARK" state. ‘ it is possible that an IO8 DESCRIPTION 6. . 5:! Discussion o.I .I General The 680 5-Bit Character Exerciser transmits and/or receives 5-bit coded Teletype data at the line speed of Teletype clock I and will verify correct operation of the 680 DCS hardware. gram allows parameters to exercise up to I28 lines and includes three test modes: Concurrent o.I .2 Input, and Output the Switch Register. ‘ Test Descriptions Concurrent Output Test 6.I .2.I program The proConcurrent Output, The Concurrent Output Test accepts parameters to transmit on from I through I28 lines. that all the lines selected are full duplex and that any input is due to an output line The assumes ' iumpered to an input line. The following message is transmitted on all lines selected: THE QUICK BROWN FOX JUMPS OVER THE LAZY DOG 0123456789 -?':$'.&#'().,;/" RYRYRY It input is received on any at the lines selected, the program verifies that the characters Also, since the input is tested almost in- received are received in the same order they are transmitted. dependently ot the output, it is possible to jumper input Iinesto output lines in any configuration that is desired, including and/or other than I for I . o.I .2.2 ‘ Concurrent Input Test The Concurrent Input Test initializes to scan all I28 lines for input. When a character is received on a line, the program transmits the character received on the same line. i 6.I .2.3 Output The Switch Register Routine This Routine transmits the code contained in SWITCH REGISTER bits 7. through II on the line contents of the SWITCH REGISTER when the routine is started the The program transmits a specitied by . carriage return, line feed, the contents of the SWITCH REGISTER 64 times, and then repeats. It SWITCH REGISTER bit 0 is a I, the program transmits a character, waits for it to be input and then verifies that the output and input are equal. Since the input is two characters behind the output (due to the double but— tering of output characters in the character assembly subroutines), the compare mode must be selected at the time the processor halts at address IOOZ. PDP—8 Maindec 826—8 Page 5 METHODS (Not Applicable) FORMAT (Not Applicable) EXECUTION TIME (NOT Applicable) TO. PROGRAM 1094 Program Listing PAUSF /TYPF 68w TELETYPE LINE MULTIPLEXER 5 BIT /EXERCISFR /KFN 12/15/66 /STABT AT BOO LINE STARTING /COMPUTEP NILL /NITR /SFT SNITCRES /CONTINUE /PROCRAN NILL /IS = TO NUMBER LINES OF UNTIL AN ERROR UNTIL STOP_ RUN OR DETECTED SWITCHES IN NUMBER HALT ROUTINE /1NTFRRUPT Rflflfil flflfl1 6421 INRUPT, HLT 5 BIT CLOCK INTERRUPT /YES, PROCESS INTERRUPT /NAS T5SKP W022 7402 Mmm3 54®4 JMP “2&4 522G TSOIS I IT UNKNONN /NO. ,+1 /TT5BCN %2Mfl \ W208 76Q4 OCSTST, ®2m1 323% OCA M2W2 W203 74fl2 76®4 OLA OSR /CET STARTING STRLIN /SAVE CLA OSR /HALT, WAIT NUMBER /CET NO OF LINES /SAVE IT HLT @2m4 3331 OCA NUNLIN @205 1331 TAO NUNLIN W2fl6 7241 CIA W2fl7 3332 OCA LINOEX [SAVE @212 1332 TAO LINOEX /SET UP /FOR INITIAL. /SET UP M211 3345 OCA NOEX 0212 1333 TAO @213 123% TAO OUTOEX STRLIN @214 3M11 OCA E @215 1335 TAO W216 123m TAO INPOEX STRLIN @217 3912 1337 OCA Z 12 OCRELP, @221 W222 3411 OCA I z 1337 TAO @223 3412 OCA CHARAC I z 12 M22@ /NO /2'S LINE IT OF LINES LINES COMPLEMENT FOR COUNTING /INOICES OF /INPUT ANO BUFFERS 11 /OUTPUT a TAO 11 W224 7345 ISZ NOEX M225 522% JMP OCBELP @226 1331 @227 4552 @232 flflflm TAO NUMLIN TSINIT O STRLIN. CHARAC /AOORESS 0F CHAR /TO OUTPUT BUFFER /AOORESS TO COMPARE /CHAR TO INPUT BUFFER /COT ALL TABLE LINES /NO /SET NO OF LINES IN AC /INITIALIzE TTY /STARTINC LINE NUMBER PDP-8 Mai ndec 826- B Page 6 @231 6424 TTSON /TURN CLOCK @232 @233 6@@1 ION /TURN INTERRUPTS 72@@ CLA @234 123@ TAD @235 1334 TAD @236 334@ DCA @237 123@ TAO STRLIN OUTDEX+1 CUROUT STRLIN @24@ @241 3341 1332 DCA TAO CURLIN LINOFX @242 3345 DCA NOEX @243 174@ OTLOOP, @244 3342 OCA SAVCUR @245 1742 TAO I SAVCUR @246 3177 OCA z TTCHAR @247 1341 @25@ 455@ TAO CURLIN TBSOF ON‘ ON /FORM START OF /OUTPUT RUFFER FIRST /CET TAD I CUROUT LINE /CET NO. POINTER FOR NEXT OUTPUT ' /CET NEXT OUTPUT CHARACTER ' /CET LINE NUMBER /CHECK FOR FREE OUTPUT /OUTPUT NOT FREE /AOO 1 TO CHARACTER POINTER @251 741@ @252 274@ SKP 182 I CUROUT @253 174@ TAO I CUROUT @254 @255 7@41 CIA 1343 TAO @256 744@ SZA @257 5262 JMP .+3 @26@ 1337 TAO CHARAC @261 @262 3740 DCA I 234@ ISZ @263 2341 182 CUROUT CURLIN @264 72@@ @265 2345 CLA ISZ NDEX @266 @267 5243 4551 JMP INLOOP. @276 5233 JMP STRLIN+3 @271 @272 3341 OCA CURLIN 1341 TAD CURLIN @273 1336 TAD @274 334@ DCA INPDFX+1 CUROUT I CUROUT /CET INPUT POINTER THE LINE INPUT POINTER /CET NEXT ,/37 . OTLOOP TSSIR 174@ TAO 3342 OCA @277 TAO @3@@ 1177 @344 SAVCUR TTCHAR @3@1 7@41 AND LSTCHR+1 CIA TAO SNA I INCINP 1742 745@ @3@4 5317 JMP @3@5 @3@6 72@@ CLA 1341 TAO @3@7 74@2 HLT @31@ @311 72@@ CLA 1742 TAO @312 74@2 HLT @313 72@@ CLA @314 1177 TAD @315 @316 @344 AND 74@2 HLT @317 274@ @32@ 72@@ INCINP, CLA @321 174@ TAO /ADVANCE TO NEXT LINE /AOVANCE TO NEXT LINE /CLEAR FOR TAD /TESTED ALL LINED FOR /NO, TRY NEXT LINE /ANY INPUT AVAILABLE /NO, OUTPUT AGAIN /YES. SAVE LINE N0. ' @276 @3012 /THE END OF OUTPUT /NO /YES RESET POINTER /T0 FIRST CHARACTER CUROUT @275 @3@3 /HAS CURRENT /LINE REACHEO LSTCHR I /FINO /FOR . SAVCUR INPUT /CHARACTER INPUT /EOUAL CHARACTER CURLIN CHARACTER , /YES. INCREMENT EXPECTED POINTER /LINE NUMBER AC TO /HALT I SAVCUR /CHARACTER EXPECTED TO AC /HALT z TTCHAR LSTCHR+1 /CHARACTER RECEIVED /HALT ISZ I CUROUT /ADVANCE INPUT POINTER , . I CUROUT /CET INCREMENTED POINTER FREE PDP-8 Maindec 826- B Page 7 @322 7@41 @323 1343 CIA TAO @324 744@ SZA @325 @326 5267 JMP 1337 TAD /LINE AT END OF /INPUT CHARACTERS /NO, TEST FOR MORE INPUT /RESET INPUT POINTER /TO FIRST CHARACTER /TEST FOR MORE INPUT LSTCHR @327 374@ DCA INLOOP CHARAC I CUROUT @33@ 5267 JMP INLOOP @331 @@@@ @@@@ NUMLIN. LINDEX. @ @332 @333 2177 OUTDEX. BUFFR-l @334 22@@ @335 2377 INBUFR-l /NUMBER @ @336 24@@ @337 @4@@ CHARAC. CODES /START @34@ @@@@ CUROUT. CURLIN. SAVCUR. LSTCHR. @ @ /TEMP /TEMP /TEMP NDCOD+1 /FOR @341 @@@@ @@@@ @343 @344 @527 @037 @345 @@@@ /FOR @ /FOR 37 NDEX. BUFFR=22@@ INBUFR=24@@ /5 BIT CODES ANDING /FOR @ OUTPUT LINES COMPLEMENT NO OF LINES /FOR FILLING OUTPUT BUFFER CHECKING OUTPUT BUFFER /FOR FILLING INPUT BUFFER BUFFR INPDEX. INBUFR @342 OF /2'S ~ BY OF 5 BIT CODES STORAGE BUFFER POINTER STORAGE CURRENT LINE NO. STORAGE CHARACTER POINTER DETECTING END OF CHARACTERS TTCHAR COUTING DCSTST #400 @4@@ @@1@ CODES, @4@1 @4@2 @@@2 22 /LINE @@@2 22 /LINE @4@3 @@37 37 22 @4@4 @@2@ @4@5 @@24 24 @4@6 @@@1 @1 1O /CARRIAGE FEED FEED /LETTERS /T /H /E @4@7 @@@4 @4 /SPACE @410 @@27 27 /Q @411 @@@7 27 /U @412 @@@6 @6 @413 @016 16 @414 @@17 17 @415 @@@4 24 /I /C /K /SPACE @416 @@31 31 @417 @@12 12 /B /R @420 @@3@ 32 /O @471 @422 @@23 23 /W @@14 14 /N @423 @fi@4 24 /SPACE @474 @@15 15 /F @425 @@3@ 32 @426 @@35 35 /O /X @427 @@@4 04 /SPACE @433 @013 13 /J @431 @@@7 27 /U @432 @433 @@34 34 /M @@26 26 /P @434 @@@5 m5 /S @435 @@@4 @4 /SPACE @436 @@3@ 32 /O RETURN PDP—8 Mai ndec 8265- B Page 8 0437 0036 36 /V 0440 0001 14E M441 0012 01 12 0442 0004 04 /SPACE ’/T 0443 0020 20 0444 0024 24 0445 0001 01 /R /H. /E: 0446 0004 04 M447 0022 22 0450 0451 0003 0021 03 /A 21 «72 0025 25 /Y ‘04 /SPACF 0454 0004." 0011 11 0455 0030 30 M456 ‘32 02 /D /o /G /CARRIAGE RETURN A/LINE FEED /FIGuRES 0452 0453 J /SPACE :/L M457 0032 0010 M460 0002 M461 *0033. 13} M462 0463 0026 26 /0 0027 27 /1 M464 0023 23 0465 0001 /2 /3 /4 10 i 0466 0012 01 12 M467 0020 20 /5 /6 0470 0025 25 0471 0007 07 /7. 0472 0006 06 /9 0473 0030 30 /97 0474 0004 04 /SPACE 0475 0003 03 M476 31 0500 0501 0031 0016 0011 0015 /MINUS /QUESTION /COLON /DOLLAR /EXCLAMATION 0502 M503 0032 0024 32 0504 0013 13 0505 0506 0017 0022 22 M507 0034 34 14 /CDMMA /SEMI COLON /SLASH 0477 16 11 15 /AND /NUMBER SIGN /APOSTHROPHE /LEFT PARENS /RIGHT PARENS /PERIOD 4 24 17 ' 0510 0014 0511 0036 0512 0035 35 0513 0021 21 /0UOTES 0514 0010 10 /CARRIAGE 0515 0002 02 0516 ‘0037 37 /LINE FEED /LETTERS M517 0520 0012 0025 12 25 /R 05?1 0012 12 /R 0522 0025 25 /Y 0523 0012 12 /R 0574 0025 25 /Y 0012 12 /R 0526 0025 NDCOD, RETURN /Y 0525 25 , /Y , 8"de 3apumw 8-988 3 9609 6 9319V9VH9/ 19VLS/ 1v 0993 999 s3213v111w1 903 BET SiIVM 903 SlfldNI SiINSNVdi/ 391/ SHHLOVHVHO 03AI3939 N3Hl/ SilVM 903 3909 SifldNI NV99099/ SNn9 WILNH “901$“ NV99099/ S3N13 wv99099/ OHDB/ lfldNI/ N3Hi/ SHBLUVHVHD N3Hi lfldlflO 999* @D9% QQZL ‘SiOHDB 1999 9181 0v1 869% 2999 ZSSV BMZM iINISi ‘N11993 VDQM SMQQ b3b9 T009 NOSii N01 999m 199? 91391 LD9M 9839 dNF I-° 99019/ NO 339VN3/ SldflHHELNI dIMS/ 31 inle ifldNI/ lON ‘AOVBH lIVM 919% SIZE X30993 3AVS/ IiQM STZI v90 UVi X39993 139/ Z£9M EEQM TIES 30891 dNF a—' lON/ 9989 9wr iIVM/ 000% ‘x30H93 V¥9m SL9M ESSV 139/ v19 983N0 3N11 93awnN BZI=OV/ 90138/ 903 BET SBNIW 3N11/ 938wnN m SNILHVLS 939wnN 3N11 3N1? M 93awnN ifldlflO/ €+N13993 3393 A81 NIVSV 390w ifldNI 9 . 9199 @QZM 9999 ‘823N0 ilNSNVdi/ 9v SBHDLIMS laVlS/ 1V @flfll HllM/ SJHDLIMS = 3N11 NOD/ HHLHd 111M lWVH 838NDN BMS/ = Z HEifldNOQ 711M lON BHVdHOQ lfldNI EMS/ = T 93109909 SEHVdHOD ifldNI lSNIVDV LMS/ Ui“ TTMS = HBLQVHVHD OflliINSNVHl @MS/ AVN iON 38 GBBHLWV BOND SNINNDH LMS/ Oi TIMS AVW 38 GHHEiWV lfldlflO SlIWSNle BQVIHBVD BNIW/NanlBH 0333 3Hl/ LMS Ul TIMS V9 SBWIL N3Hl/ BSVIHHVD NHHI3H 3N1? 99/0333 SHBlQVHVHO NVHSUHd/ SNHH WIlNfi udOlSu NVHUOHd/ iIWSNVai/ 9v SBHDlIMS @9019 v39 139/ 980 DMQI TWZI VUQL 9082 ‘9SNV9L 2991 {MEL 29v; TQGL 139 3V1 7991 QWQI QMMI 899? t8b9 90933 NHfli/ £991 TMBQ 379VN3/ EEZI b981 901 UVi TlQI 9932 v99 ZLZl L9Z£ UVi EMEM v99 N13v91 iINISi ‘NIWV91 w 3N11 0N I+iINISl/ iIVM/ 903 9319v9VH9 ON=DV/ 30 s3N13 (I) EEIWVILINI/ All S3N11n09 3N13/ 938wnN 99039 NO 319n9931N1 v99 v9d/ X39v91 T+X30V61 903/ ONIlNflOD 39v199VO/ NdfliBH ENIW 8'de OQPUHWN 8-938 960d 01 ELDL TABS VLGI 188? V00 SWF HHDVB1 1n0va1 QLML @121 0V1 9L®L 1122 V00 LLEL 182v SN? DCQL v391 VWQ Z+X30VH1 HHOVbi 1nova1 880 wal 998% UNV ZdEL 1122 V00 QéwL Laav bdflL 9924 Sdfil @889 dNF 960L @129 dNF del £889 ‘1HOV81 EXEL @321 V70 IiEL ZEML 1121 1412 VOU ESEL 9321 biwL SEZL 92®L 1391 LEEL v30; @Vfll @691 £893 IVQL vaL QVBI T99? ZbZS . SHELDVHVHO‘indiflO/ 1nd1n0/ 139/ a31ovaVHo NI S3H01IMS av333/ 33v 1n8 3M3 s 1nd1nO/ HBiOVHVHfl 1nd100/ 103100/ v9 saa1ovaVH3 1831/ s3H31IMs vaov 1nd1n0/ 'avo 3N13/‘133 0333 0V1 LJBBHi aHova1 1n0va1 ' X30va1 g—' €+N11VH1 dNF 118/ VWD dWF I @/ 100V81 ‘1vmva1 dwr 1nd100/ HSO V73 1N8 BBBNDN 3NIW/ 0V1 NIWVEi jUSEi dNF g-' ‘EMSVHi 1V6 lfldlflO 8310V8VH3 9N1110d100 133/ 803/ HHSVHl BVH311 B BIS§1 ON/ BMZL v33 £111 uv1 HVH311 133/ 9V®L 998% UNV 1333H1 HVBWO/ vaL TVDL vwa DVI 3H0v31 $561 TLZE uv1 BSVL VNS 1399 dwr QSML waL v33 VSWI 112? uv1 ESwL ava 13H QSML @MZL v13 LSQL LATE 0V1 @9QL 998w UNV I9EL Z9ML ZMVL EMZL v13 EQEL £899 dwr V9®l BELL 99®L LEEW 99ML mmmm ‘VQM ‘1336H1 ‘X30V81 L9ML QIQM' awmw TLML 3333 1 Nivav BHlDVHVHO d01S a313vaVH3/ 1n0va1 131 dIMS/ JI lfldNI ‘1fldNI 1831 EMS VVQL IsflL ZSEL ‘3333 139/ SEHOLIMS 01 MNIW 1Ix3 ‘ON/ I-' 10N 138 SVEL QLEL N80138 V SWP {SI essv @229 1nd1n0/ 39v133v3 1nd1n0/ 3N13/ 0333 118 1N38=03A13338 11x3/ HHDV81 831DVBVHD/ 1N38 HElQVHVHO/ 01/ 1SV7 S 03A1333H 8118 17VH/ HVH311 LJBBHi 17H/' 13H I 1nova1 1IX3/ BELL 99‘/ 803/ HOJ/ 42 w SNIUNV UNllNflUD HSVIBHVO/ NHfllEH 3NIW/ 033$ 0 ‘BHDVHl HElOVHVHO/ 3311/ 689 33113131 3N13 53x3331110w a31uvaVH3/ A3aw383v 3NI1HOH ET am HNW/ S9/SI/w16 Zwt9zl11 S 1I8 vwvy=o11 3dA13731/ 33113131/ 1119:3311 av31a/ VTV9=1511 ctv9=1511 39V801S lfldNI ONVNNOQ lfld1fl0 0vaw03 3N11 33181933 0v3a/ 3N11 83181936 133/ 3N11 ‘33131933 313 3v PDP-8 Nkfindec 826—8 Page II TT5ON:64?4 /TURN /TURN /SKIP TT5OFF=6422 T5SKP=6471 TTINCR=6401 /6RO LINF /LIST OF CLOCK ON CLOCK OFF ON CLOCK FLAG /INCREMENT LINE REGISTER MULTIPLEXER ITEMS T5IBF=72OO T5OBF2=7OOO T5OBF=660O T5IN=56OO TT5PCO=145 T5AX1=1O T5AX2=11 T5AX3=12 T5AX4=13 TT5RGN=59OO TTCHAR=177 *TT5PGO M145 OOOO T5INFL. M146 7177 M147 MOOO M150 54OO M161 5423 M182 5447 T5RFK, T5NL. TSSOUT. T5SIN, T580, M163 66mg TSOUTK, T5GOS TSOBF M154 7774 T5ONT1, -4 M155 OOGO M156 MOOO T5OBF2 /INPUT READY FLAG /TO RESET INPUT BUFFER POINTER /-NUMRER OF LINES /SKIP IF OUTPUT FREE /SKIP IF INPUT READY /INITIALIZE ROUTINE /POINTER TO 18T OUTPUT BUFFER /HOLOS MAJOR LOOP COUNTER /MINOR LOOP COUNTER /COUNTER FOR INPUT BUFFER /FOR ANOING /2NO OUTPUT BUFFER T5CNT5. M /OUTPUT T5CNT6. O /7 -O T5IBF—1 O T5OUTS T5INS M157 M177 O16O M161 7000 T5CNT2. T5CNT3. T5K10, T5K36, MOOO M162 VMOOO M163 777G T5K2, M164 56OO T5K3. M165 7776 T5K5, M166 O4OW T5K6. 4Mfl M167 66OO T5K7, T5ORF M17M 5291 QOOO T5K8, TSKQ, T5COM M171 M172 6577 T5K9A, T5ORF-1 M173 5237 T5KQP, T5CM1A M174 5361 T5K9C, M175 5221 M176 7000 O O 177 -1@ T5IN -2 O COUNTFR COUNTER /TO RESET RIT COUNTER /RESET INPUT TTI POINTER /FOR SUBTRACTION /TO RESET 5 BIT ASSEMBLY WORD /K FOR lST OUTPUT BUFFER /TO ENTER COMMON ROUTINE /LINE NUMBER -1 /FOR CLEARING RIT AVOID OUTPUTTING SET OUTPUT BUFFER /FOR NORMAL RFTURN JMP /TO /TO T5K9O, T5CM1O T5COM T5K9F, NOP /TO DO INPUT FROM DOUBLE ONLY *TTSDGN LEVEL INTERRUPT ROUTINE /ALLOWS MULTIPLE LFVFL INTERRUPT TO /AND UNLIMITED /MULTIPLF IS? 52mg P366 52Q1 5216 T5OIS, JMP 52M2 3367 OCA 5293 701O RAR 5204 337M OCA T5SVLK 5205 iflflO TAO Z ROUTINE /LEVEL T5LC /2ND T5OISE /SAVF T5SA /GET O THIS LEVEL ACCUMULATOR LINK /SAVE /INTERRUPT COUNTER INTERRUPT LINK ADDRESS» BUFFER PDP~8 Mai ndec 826- B Page.12 ‘6226 3371 5227 6414 TTRL 5212 3372 OCA 5211 6424 TT5O N 5212 5213 1171 TAD 6413 TTSL +1 5564 5216 6424 5217 6001 ION 522D 54MB JMP 5221 1373 5272 3155 JMP I 1375 7 T5K9 T5 K3 5227 5351 JMP 6232 6405 TTO+1 7155 5225 JMP 5235 6414 TTRL 5236 3375 DOA 5237 1374 3155 5241 2D1O 5242 141C 5243 7112 5244 743C 5245 5326 5246 72MB T5CM1A." 7OBD T5COM3, 525m 2D1O 2376 182 5252 2155 5253 5254 5241 2154 5255 5256 531% 1164 5257 3010 TAO .1171 TAD 700l IAC 5262 3376 5263 5264 1377 3154 2161 5266 5316 5267 1165 527M 5271 3161 5272 3375 1171 TSOUTK /REAO T5MNC2 /NO T5CNT2 /MINOR T5AX1 = l 526B Z ‘ T5COM4. 5261 5265 /SAVE ISE T5COM2, TAD CLL , ‘ /LINE NUMBER /OUTPUT OF DONE NUMBER NUMBER LINES/4 LINE LINE LOOP COUNTER /AOVANCE FOR NEXT INPUT LINE 2 T5AX1 I /CHARACTER ASSEMBLY WORD RTR /PUT BIT 12 IN LINK SZL /CHARACTER NOT COMPLETED JMP T5COM6 /STORE CHARACTER CLA /CLEAR AC FOR TAD /OR JMP T5CM1O NOP ISE 7 T5AX1 /UPDATE FOR NEXT INPUT LINE /UPDATE LINE NUMBER T5LN? IS? T5CNT2 /ARE ONE-FOURTH OF LINES CHECKED? JMP TSCOMZ /CHECK NEXT LINE ISZ T5CNT1 /HAVE ALL INPUT LINES BEEN CHECKED JMP T5COM5 /RESET AND DISMISS Z T5K3 /T51N DCA Z T5AX1 /RESET TTI POINTER 7 T5K9 /START LINE—1 /SET TO FIRST LINE DCA T5LN2 /RESET LINE NUMBER /-4 TAD T5K2A /INPUT CHECK COUNTER OCA T5CNT1 IS? 2 T5CNT5 /HAVE ALL OUTPUT LINFS BEEN CHECKED JMP T5COM5 /RESET AND DISMISS TAD 3 T5K5 /-2 /RESET COUNTER OCA 2 T5CNT5 TAD 2 T5K9 /START LINE~1 OCA T5LN /RESET LINE NUMBER RCA 5247 5251 TAD LINES/8 LOOP COUNTER NUMBER OF T5LN I 2 5233 /MINOR T50UTK 2 T5CNT2 T5COMD T5COM8 DCA 5234 T5COM1; /-NO. WORD /CHARACTER AVAILABLE /NOTHING TO TRANSMIT /INCREMENT AND TRANSMIT /RFSTORE CHARACTER /UPDATE OUTPUT POINTER /ARE ONE-EIGHTH OF LINES /CHECK NEXT OUTPUT LINE RNA IS? IS? 524a CLOCK FLAG /RF—ENABLE PROGRAM INTERRUPT /RETURN TO THE MAIN PROGRAM INPUT TTI LOOP T5MNC DCA 7 T5CNT2 TAD T5LN /SET LINF TTSL+1 TAD I Z T5OUTK T5COMB, 1553 3553 /CLEAR TAD 745% 2153 ADDRESS /READ LINE NUMBER /SAVE LINE NUMBER /TO CLEAR CLOCK FLAG ONLY /RE—ENABLE PROGRAM INTERRUPT /STARTING LINE-1 /SFT LINE REGISTER. CLR AC REGISTER, CLR AC FROM T5COM, 5226 5231 LINE Z I 5225 5232 /SET /2ND LEVEL INTERRUPT TT5ON T5OIS3. /RFTURN 6413 I ION TSDISQ, 5214 5215 6273 TSSVLN ‘ 6DO1 5224 /SAVE T5SVO DCA PDP-8 Maindec 82648 Page 13 5273 2162 TSR 5274 5353 JMP 5275 1163 TAD 5276 3162 DCA 5277 2161 1172 TAD 53mg Ts; % TSCNTD T5COM9 T5K2 7 TSCNTD /ENDING 7TH RIT? /NO RESET NORNALLY /41O /RESET COUNTER /ADD 1 TO COUNTER /T5OBF~1 /OUTPUT POINTER /TSOBF2 /2ND BUFFER POINTER /SPECIAL ADDRESS. T5CM1A /RESFT ADDRESS /JMP T5CM1O /SET TO DO OUTPUT /TURN OFF INTERRUPT (“"14 T5CNT5 TBKQA 53D1 3013 DCA PM T5AX4 5302 116% TAD “H T5K36 53D3 53D4 3153 1173 DCA TAD TSOUTK z TSKQB 53D5 3170 T5K8 1174 DCA TAD 2 53D6 % T5K9C 5307 3247 DCA TSCDMS 531D 5311 7240 STA 5312 1366 TAD T5LC /LEVEL 5313 3366 DCA T5LC /RESTORE 5314 1366 TSLC 6002 T5COM5. C 10F /~1 5315 77OO TAD EMA 5316 5212 JMP T5DIS2 5317 1372 TAD T5SVLN 532D 6413 1376 CLA /LINF 71D4 CLL T5SVLK RAL 5373 1367 TAD T5SA 5324 6OD1 ION 5325 5771 5326 7112 T5COM6; 5327 7012 RTR 533D 3411 LDCA 5331 5332 1376 TAD 3411 DCA 5333 10lO TAD 5334 1165 TAD 5335 301O DCA 5336 341% DCA 5337 1166 TAD 534D 341D DCA 5341 2145 IS? 5342 2156 5343 5247 IS? JMP 5344 1146 5345 3011 DCA 5346 1147 TAD T5NL 5347 3156 DCA ? 535D 5351 5247 5352 5232 JMR T5COM79 TAD JMP T5COM8, TAD 5353 1167 5354 5355 3153 1175 DCA 5356 317D DCA 5357 1176 TAD 536M 5361 53D7 1553 TAD JNP T5CM1DA RTR Z “HHJ-fl‘HS‘H‘H—IH T5AX2 /STDRE 5LN2 2 T5AX2 /LINE T5K5 T5AX1 /w2 /RESET Z COUNTER NORD ASSEMBLY RORD ASSFMBLY wORD /SFT TNRUT READY FLAG /RAS END OF BUFFER REEN REACHED? /CONTINUE /TSIRF41 /RFSET TNRUT BUFFER ADDRESS POINTER /2ERD STATUS_AND /NORD TO RESTORE /RESET CHARACTER T5AX1 T5K6 Z T5AX1 T5INFL T5CNT3 T5COM3 E T5RFK 7 T5AX2 /w«UMBER OE LINES /RESET LENGTH COUNTER T5CNT3 T5COM3 /CDNTTNUE /INcREMENT T5COM1 ? T5K7 , LINE NUMBFR /CONTINUE /TSOBF T5OUTK T5K9D /RESET OUTPUT POINTER /NORMAL ADDRESS, TSCDM T5K8 /RESET T5K9E /NOR T5CON5R1 TAD CHARACTER NUMBER /STORE LINE NUMBER /TTI RDINTER 3 ‘H‘VH‘HI‘N . T5AX1 TTINCR JMP T5COM9, T5SVD I OLL NUMBER LINE REGISTER. CLR AC /PICK UP LINK /RESTORE LINK /RESTORE AC /RF°ENABLE PROGRAM INTERRUPT /RFTURN TO THE MAIN PROGRAM /REMOVE START CODE /SET 5321 5322 64ml LEVEL COUNTER COUNTER /RESTORE AC, ETC. /CHECK INPUT AGAIN, ETC. /LEVEL =TTSL+1 TAD COUNTER I E T5AX4 T5OUTK 5362 3413 DCA I 7 5363 3553 DCA I T5OUTK /2ND ADDRESS /CDNT:NUE BUFFER CHARACTER /STORE IN 18T BUFFER /CLEAR 2ND BUFFER 8"de ”WWW "938 8 9590 v1 ”S929 SSTK @988 9999 ALLA L928 MQQM V999 0128 @000 TASS 600% 8128 0000 2129 0000 VASE SLQS 0080 9LQS 0000 ALQS #111 0000 ZSI MlflOSl dNF I+QNOOSL BiVOdfl/ HBlNIOd EHNILNOO/ SiNVlSNOO/ ‘0391 1- ‘vs91 ‘03A091 100003101/ 33A33 0310000 3AVS/ 001v300000v SAVS/ MNI3 JAVS/ wv00000 031N000 3Av3/ 3013 HBSNHN 00-/ 30 8/s3N13 00—/ 30 v/S3NI3 3013/ 03800N 003 100100 3NI3/ 038000 003 100N1 01/ 13830 0orvw 0003 031N000 63: S ‘0Asg1 ‘N3A591 0 ‘00091 ‘200091 ‘0391 ‘50391 0 0 ‘va091 v- 8 ' 0 0 80011v0300-0003s0/ 000+000s11* 0103/ 1.000/ 31 100100 SI 3381 0108 3013 03000N SWF=JOS§1 1 ‘810051 0 2 11080v01 H3LDVHVHD 1V 38 NI 'OV SDVZ ‘°NIN GNV 1300 100891 0009 @®@@ I009 1910 00v 8009 1121 UV1 2101791 0911 UVi 0009 0222 v00 9009 0291 0V1 9009 0091 V28 1009 0099 000 0109 1109 1111 1020 0V1 00v 3109 2021 0V1 21091 2109 0011 330 3V0 vas 9109 0092 v00 1 0020 281 810091 QLVE @098 000 1 1109 0000 ‘7891 0 0009 @MQM ‘VMSL 0 0000/ 1000 1200 12 2009 0000 ‘11091 ‘81091 003/ 003/ 2009 @090 31 1v 00110V1s-/ 3013 038000 033300 SS3000V 100100/ 0000/ v30v 100100/ 0310v0VH0 VM91 I V091 V30 1 810091 z 0103/ 31 3303 11x3/ 0010/ 00 0310V0VH0 9/ 8118 A3N0 001/ 003 0018 3000 31v300/ 10v1s 3000 30018/ 0310V0VH0 NI 330V1 x3001/ 11x3 11x3/ 0N110v1S-/ 3013 030000 0VH011 11091 V091 SiflOQi 338V3IVAV 0310VOVHQ SWF=0ISQ1 I ‘SNIS1 0 , Z v30v s 118 0018 N00130 UNV BSIM03H10 00 1ON 0108 ‘°XVN 809'12 3VNOON 31 '0VHO11 “010 8000 3000 3000 H1IM 3N13 038NnN NI 3V 10v30 NISS1 301 9605 30B9 @VZL v30 VWU 9005 SVII 0V1 Z #609 111/ 00 0V00/ 8001/ 01091 3891 2 -92091 2 ‘ 0108/ ‘HVHQli 381M83H10 SHE? 'XVN 3V dOJ 1-UV1 lfldNI/ OVTj T-HBLNHOD SNIHiHNOS/ BWBVWIVAV 138/ WJNISL £609 0191 V05 0209 1209 beE 00F SbTE NUNlSl VOU i 3209 9b86 $81 WJNIQi ViNOSi EQVS hits EVZS dNF S+' AVTL UVL i 9208 9022 VDU ViNUSi 9208 9VTL UVi 1009 3102 V30 E ¥ 03891 QXVSl MVtB ZTbL UVi 1 Z {V09 LATE VOU i HVHUli iIX3 WNQL QXVSL SVWJ 831N003 éHEJJflB lHViS 133/ HElDVHVHD HEBNHN‘/ JO SHNIW 13838/ 831N003 HEJJHS/ 1-SSBHUGV 13838/ SSBHGOV XOId/ dfl HELDVBVHD 38018/ HBlOVflVHO 3&01838/ ON3/ JO 1V I-N- PDP-8 Maindec 826- B Page I5 S442 1412 S443 22?3 5444 6001 S445 5673 5446 M000 TAD ISZ Z I T5AX3 JMP T50NT4. /FORMAT TSINIT / IST T5008, I LINE Z D355 AND 3147 DCA 5452 1147 TAD T5Kl4 TSNL Z TSNL T5K15 OLA Z M356 AND 764% SZA S465 1357 TAD BABE 1147 TAD Z 5467 D36@ AND T5K17 5460 7D41 3147 CIA T5001, Z TAD Z TSNL TSNL 1361 TAD TSKZD B465 3U1® DCA Z 5466 TAD 5467 1362 3m11 DCA T5K21 Z T5AX2 S470 1373 TAD T5K37 5471 3012 DCA 6472 TAD 5473 1147 3246 6474 1363 DCA T5AX1 T5AX3 TSNL TSCNT4 T5K22 Z 6475 341% DCA I Z T5AX1 S476 3410 DCA I Z T5AX1 DCA I DCA I MN TSAXZ 1166 55ml 3410 3411 TAD Z TSKé T5AX1 Z TSAXS /TSIN-1 STORE /TO TTI /T0 CLEAR /TBOBF2-1 /TO CLEAR AREA DOUBLE BUFFER /—N /FOR COUNTING /TTI+INCR /STORE TTI /CLEAR STATUS WORD /ASSEMRLY RESET WORD /RFSET ASSEMBLY WORD /ZERO OUTPUT WORD 3412 2246 65B4 65MB 5274 1364 JMP T5002 TAD T5K24 BSDE 3410 DCA I 65B7 1147 TAD Z 5519 7012 RTR /—M/4 5511 5512 701m RAR /-N/8 @365 AND T5K25 /17 6513 1366 TAD T5K26 /776D. 5514 3767 DCA I TAD T5K27 I‘T5K27 I T5K27 I T5K38 /TBMNC /T5MNC /T5MNC.-N/4 /TBMNC2 /—1 5515 1767 5516 1767 TAD 5517 3774 DCA 5570 724% STA Z T5AX1 TSNL TABLE OUTPUT SSOZ DCA I T50NT4 LINES /TSOBF-1 BEDS ISZ OF /COUNTER TSCNT3 TAD LINES LINES ‘ 5463 T5009. 0F /-N 5464 Z 0? /ND. /7 T5K16 TSNL DCA /377 /ND. /MULTIPLE OF 8 /1D /ND. 0E LINES /37D /TWO'S COMP. NUMBER /-N, CONSTANT 1147 3156 BSBD AC T500 B463 6477 LINES N0. 6464 DCA IN OF D 5460 S462 /EXIT /-NUMBER TBINS I I71 5461 S461 N0. I0 N TSINONI TBINIT=JMS Dmflm LINE EXIT /INDEX /INITIALIZATION ROUTINE /ENTFR WITH NUMBER OF LINES 5447 UP /PICK TSINS /CLEAB /COUNTER DOUBLE BUFFER NEXT LINE I z TSKB /STORE FINAL JUMP /Do /JMP /-N . MAKE NUMBER NEGATIVE PDP—8 Moindec 826—8 Page 16 55?6 1165 5527 5535 3161 1164 T5CNT4 Z TSBFK T5AX2 /SET TAO T5K28 OCA Z T5CNT1 TAD Z T5K5 OCA 2 T5CNT5 TAO Z T5K3 5531 3510 nCA z 5532 1167 TAO T5K7 Z T5OUTK T5GOS T5K9 T5K9 5521 5522 DCA 3246‘ 1146 5593 3511 55?4 5595 137G 3154 TAD DCA E 5553 3153 OCA 5534 724G STA 5535 1647 TAD 5536 3171 OCA I 3 5537 1171 TAO Z 5545 794g CMA 5541 3217 5542 3145 OCA OCA 5543 5544 5545 7245 STA 3771 2247 INPUT T5AX1 T5SL 2 T5INFL OCA I T5K35 IS? T5608 /SET CNTR TO SKIP 18T TIME /T5IBF*1 BUFFER POINTER /-4 /MAJOR LOOP COUNTER /-2 /OUTPUT COUNTER /T5IN+1 /SET TTI POINTER /T5OBF /SET OUTPUT BUFFER POINTER /—1 /STARTING LINE NUMBER /STARTINC LINE NO-l /STARTING LINE -1 /MAKE NEGATIVE /—STARTING LINE NUMBER /CLEAR INPUT FLAG COUNTER /—1 . /T5LC, /INDEX 5546 1372 TAO T5K35A 5547 3162 OCA Z 5555 1175 TAO ? 5551 317W OCA 2 5552 1176 TAO Z T5K9E 5553 3775 OCA I T5K4O 5554 5647 JMP I T5605 5555 T5K14, T5K15; 377 5556 @377 WOO7 5557 @015 1W 5568 337$ 37“ /FOR 5561 5577 T5K16, T5K17; T5K20: /FOR /FOR /FOR /FOR 5562 5563 6577 6403 T5K21, T5K22: T5IN-1 T5OBF~1 TTI+1 5564 557g T5K24: JMP 5565 fl017 T5K25, 17 '5566 776® T5K26: 5567 5373 -4 T5CNT6 T5K9O T5K8 RESET INTERRUPT LEVEL EXIT /-7 r/SET SPECIAL /T5COM /TTI RETURN /NOP /T5COM3 /EXIT 5-BIT COUNTER /CONSTANTS 7 /FOR EVEN MULTIPLE EVEN MULTIPLE EVEN MULTIPLE STORING TTI'S OUTPUT AREA /FOR FINAL /FOR -N/8 776$ /FOR MAKING T5MNC /FOR ~N/8 MAJOR LOOP COUNTER I Z T5K8 5570 7774 T5K27; T5K28, 5571 5366 T5K35, T5LC /FOR /FOR 5572 7771 T5K35A, -7 /FOR T5OBF2—1 T5MNC2 5573 6777 T5K37, 5574 5575 5374 T5K38, T5K40, 5247 ANDING T5COM3 H9 DIAGRAMS (Not Applicable) 12.. REFERENCES 12.1 Other Library Programs Digital—8-35-S-A 680 5-Bit Characrer Assembly Subroutines /FOR /FOR /FOR OF 8 OF 8 OF 8 JUMP NEGATIVE INTERRUPT LEVEL COUNTER DOUBLE BUFFER ~N/4 SWITCH 5‘BIT COUNTER COUNTER
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies