Digital PDFs
Documents
Guest
Register
Log In
AH-9007C-MC
January 1978
83 pages
Original
4.0MB
view
download
OCR Version
3.4MB
view
download
Document:
CZPAAC0 PA611 TYP-11 RDR-PNCH DEC 1978 bw
Order Number:
AH-9007C-MC
Revision:
000
Pages:
83
Original Filename:
CZPAAC0__PA611__TYP-11_RDR-PNCH__AH-9007C-MC__DEC_1978_bw.pdf
OCR Text
PA 61 1 : TYP-11 RDR/PNCH CZPAACO ? AH-9007C-MC DEC 1978 FICHE1 OF.1 MADE IN USA COPYRIGHT ©73-78 M IDENTIFICATION PRODUCT CODE: SEQ 0001 AC=-9006(-MC PRODUCT NAME: CZPAACO DATE : JAN 15, 1972 MAINTAINER: TYP-11 DIAGNOSTIC READER-PUNCH TESTS GROUP THIS DIAGNOSTIC OBSOLETES MAINDEC - 11 THE IMFORMATION IN THIS DOCUMENT IS SUBJECT - DZEA TO CHANGE WITHOUT NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL EQUIPMENT CORPORATION . DIGITAL EQUIPMENT CORPORATION ASSUMES NO RESPONSIBILITY FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. NOC RESPONSISILITY IS ASSUMED FOR THE USE OR RELIABILITY OF SOF TWARE ON EQUIPMENT THAT 1S NOT SUPPLIED BY DIGITAL OR ITS AFFILIATED COMPANIES. COPYRIGHT ((C) THE 1972,1978 FOLLOWING ARE CIGITAL DEC BY DIGITAL EQUIPMENT CORPORATION TRADEMARKS OF PDP DECUS DIGITAL UNIBUS DECTAPE EQUIPMENT CORPORATION: MAS SBUS PAGE SEQ 0002 1 ABSTRA(CT THE OF TYPESET-11 READER AND PUNCH TESTS CONSISTS OF A PACKAGE TEST PROGRAMS DESIGNED TO TEST THE PAG11 READER LOGIC, READER, PUNCH LOGIC, PUNCH, AND THE READER AND PUN(LH IN COMBINATION. ALL TESTS APF INCLUDED IN ONE OBJECT TAPE. THF vr ' ABLE TESTS ARE LISTED HERE IN NUMERICAL ORDER: PRGO -READER TEST PRG1 =PUNCH TEST PRG2 ~PUNCH VERIFY ROUTINE PRG3 -COMBINED READER-PUNCH TEST PRG4 -PUNCH TAPE WITH 2 CHARACTERS SET IN SR ROUTINF. PRGS -READ AND CHECK TAPE PUNCHED WITH 2 CHARACTERS SET PRG6 -READ X CHARACTERS, THEN STALL Y MSECS. PRG7 -SPECIAL BINARY COUNT PATTERN TAPE GENERATOR. PRG10~-READER SPEED PRINT ROUTINE. PRG11-PUNCH SPEED PRINT ROUTINE. PRG12-PUNCH LOGIC INIT TEST IN SR. PRG13-READER LOGIC LIGHT TEST PROGRAMS PRGO THROUGH PRG3 ARE THE READER AND PUNCH TESTS. PROGRAMS PRG4 THROUGH PRG11 ARE UTILITY ROUTINES THAT PRODUCE TEST TAPES AND AID IN MAKING ADJUSTMENTS. REQUIREMENTS - o - — - —— A. PDP-11 THE PROCESSOR AND THE TELETYPE MUST BE B. (. PRGCESSOR. (4K CORE) ASR33/35 TELETYFt PA611 READER(S) AND PUNCH(S). TELETYPE MUST BE AT ITS IN OPERATING CONDITION. STANDARD PERIPHERAL ADDRESSES. SEE SECTION 7.3 FOR OPERATION WITH NON-STANDARD PERIPHERAL ADDRESSES. 2.2 STORAGE THIS PROGRAM USES LOCATION 00200 THROUGH 015600. LOADING PROCEDURE THIS PROGRAM'S OBJE(T THE ABS LOADER THE PROGRAM WILL IS USED IS PUNCHED TU LOAD SELF-START OF READERS AND PUNCHES RESTART ADDRESS TAPE THE IN ORDER IN THE IN ABSOLUTE FORMAT, PROGRAM. SYSTEM. TO INITIALIZE FOLLOW TYPED FOR THE NUMBER INSTRUCTIONS. THE RESTART ADDRESS OF THIS PROGRAM IS LOCATION 100¢. RESTART ADDRESS: 3.2 1004 START PROCEDURE IN GENERAL, ALL TESTS ARE INITIATED BY LOADING ADDRESS 200, DEPOSITING TEST # IN SWITCH REGISTER, AND HITTING CONTINUE. SEQ 0003 PAGE SEQ 0004 2 USE PROCEDURE A. INSURE 8. C. D. €. THAT TELETYPE IS ON-LINE LOAD READER WITH SPECIAL BINARY COUNT PAITERN TEST LOOP. IF NOT USING A LOOP, DATA MUST BE UNDER READ HEAD. LOAD ADDRESS 00200. SET SR TO 000000. PRESS START, THE PROGRAM IDENTIFIES ITSELF, TYPES SET UP AND SR OPTION INSTRUCTIONS. SELECT ANY DESIRED OPTIONS. SR15=1 HALT ON ERROR. SR14=1 ENTER SCOPE MODE. SR13=1 INHIBIT ERROR PRINT. SR11=1 INHIBIT ITERATION. SR10=1 HALT AT END OF CURRENT ROUTINE. SR9=1 SELECT A SPECIFIC ROUTINE FOR EXECUTION. SR7 THROUGH SRO=NUMBER OF ROUTINE TO BE SELECTED. SECTION 7.2 GIVES A COMPLETE EXPLANATION OF F. SR OPTIONS. PRESS CONTINUE. FOLLOW PROGRAM INSTRUCTTONS PRG1 USE PROCEDURE (DESCRIPTION IN SECTION 8.2) 4.2 MmMO~MD> G. REFER TO SECTION 6.2 IF ANY ERROR PRINTOUTS OCCUR. H. WHEN THE PROGRAM HAS COMPLETED ONE PASS IT WILL TYPE POCEND. ONE ERROR-FREE PASS WILL TAKE APPROXIMATELY 10 MINUTES. INSURE THAT TELETYPE IS ON-LINE. INSURE THAT THE PUNCH HAS AN ADEQUATE SUPPLY OF . LOAD ADDRESS 00200. SET SR TO 000001. PRESS START. TAPE. THE PROGRAM IDENTIFIES ITSELF AND TYPES INSTRUCTIONS TO SET ANY DESIRED SR OPTIONS. SELECT ANY DESIRED OPTIONS. SR15=1 HALT ON ERROR. SR14=1 ENTER SCOPE MODE. SR13=1 INHIBIT ERROR PRINT. SR11=1 INHIBIT ITERATION. SR10=1 HALT AT END OF CURRENT ROUTINE. SR9=1 SELECT A SPECIFIC ROUTINE FOR EXECUTION, SR7 THROUGH SRO=NUMBER OF ROUTINE TO BE SELECTED. A FULL EXPLANATION OF F. PRESS CONTINUE. SR OPTIONS IS GIVEN IN SECTION 7.2. FOLLOW PROGRAM G. qgg? EOSPLETION OF + N H. REFER TO SECTION 6. ll. INSTRUCTIONS. A PROGRAM PASS THE PROGRAM WILL ONE ERROR-FREE PASS WILL IF ANY ERRORS OCCUR. TAKE APPROXIMATELY 10 MINUTES. TYPt SEQ 0005 PAGE 3 6.3 PRG2 USE PROCEDURE A. « v moO B. hal . G. INSURE THAT TELETYPE IS ON-LINE. LOAD TAPE THAT WAS PUNCHED BY PRG1-PUNCH TEST IN READER. LOAD TAPE SO THAT THE FIRST RUBOUT CHARACTER (ALL 1'S) IS ON THE RIGHT EDGE OF THE METAL PLATE OVER THE READ STATION. MAKE READER READY. LOAD ADDRESS 00200. SET SR TO 000002. PRESS START. THE PROGRAM IDENTIFIES ITSELF READER. AND TYPES REACHES THE END OF THE TAPE. THE SR OPTIONS AVAILABLE IN THIS PROGRAM ARE: HALT ON ERROR. INHIBIT ERROR PRINT. REFER TO SECTION 6. PRG2 DOES NOT RESYNC IF ERRORS OCCUR. THE READER AT ANY TO SHOW EACH AND EVERY ERROR CAUSED BY EXECUTION TIME DEPENDS ON LENGTH OF 4.6 INSTRUCTIONS TO LOAD THE PRESS CONTINUE. THE PROGRAM WILL READ THE TAPE AND REPORT ANY ERRORS. DISREGARD ANY ERRORS THAT OCCUR WHEN THE READER SR15=1 SR13-1 H. (DESCRIPTION IN SECTION 8.3) PRG3 USE PROCEDURE THE TAPE IT'S PUNCH. INTENT IS YO BE VERIFIED. (DESCRIPTIGN IN SECTION 8.4) A. INSURE C. USING THE 'PUNCH FEED'' KEY, PunC- 2 FTEI BLANK LEADER. LOAD A 1" THICK STACK OF PREPUNCHED SPECIAL BINARY COUNT B. INSURE THAT TIME. PATTERN TAPE D. E. F. G. H. IS ON-LINE. IN READER, LEADER PORTION OF THE LOAD ADDRESS 000200. AND MAKE RLADER READY. TAPE. THE BLANK TAPE MUST BE AT THE READ STATION. SET SR TO 000003. PRESS STARI. THE PROGRAM IDENTIFIES ITSELF AND TYPES INSTRUCTIONS TO PUNCH LEADER AND LOAD READER. PRESS CONTINUE. THE PROGRAM WILL PUNCH A NEW BINARY COUNT PATTERN WHILE READING THE PREPUNCHED TAPE IN THE READER. THE PROGRAM SHOULD RUN ERROR-FREE UNTIL THE READER TAPE IS EXHAUSTED, AT WHICH POINT A READER NOT READY MESSAGE WILL OCCUR. REPLACE THE READER TAPE WITH THE TAPE JUST PUNCHED AND RERUN THE TEST. RUN THE TEST 6 TIMES. THE SR OPTIONS AVAILABLE SR15=1 SR13=1 I. TELETYPE THAT THE PUNCH HAS AN ADECUATE SUPPLY OF THIS PROGRAM ARE: HALT ON ERROR. INHIBIT ERROR PRINT. REFER TO SECTION 6. EXECUTION TIME: WITH IF ERRORS OCCUR. PRG3 1S CONTINUOUS RUNNING. SEQ 0006 PAGE 4 PRG4 USE PROCEDURE (DESCRIPTION IN SECTION 8.5) THIS PROGRAM CONTINUOUSLY PUNCHES TAPE WITH 2 (CHARA(TERS WHOSE mD>> Mmoo CODES HAVE BEEN SET INSURE THAT TELETYPE . . IN SR. TO RUN: IS ON-LINE. INSURE TAHT THE PUNCH HAS AN ADEQUATE SUPPLY OF LOAD ADDRESS 000200 TAPE. SET SR TO 000004. PRESS START. THE PROGRAM IDENTIFIES ITSELF AND TYPES INSTRUCTIONS TO SET SR sl L] TO DESIRED CODES AND PUNCH READY. G. H. PRESS CONTINUE. THE PROGRAM WILL PUNCH THE DESIRED CHARACTERS CONTINUOUSLY UNTIL STOPPED BY USER. THE CHARACTERS TO BE PUNCHED MAY BE C(HANGED WHILE THE PROGRAM 1S RUNNING. THIS PROGRAM HAS NO SR OPTIONS. EXECUTION TIME: CONTINUOUS RUNNING PROGRAM. THIS PROGRAM READS AND (HE(CKS A TAPE PUNCHED WITH ANY 2 CHARACTERS WHOSE OMMONAD> 6.5 CODES HAVE BEEN SET SR. TO RUN: INSURE THAT TELETYPE IS ON-LINE. LOAD TAPE TO BE READ IN READER. DATA MUST BE UNDER READ STATION. LOAD ADDRESS 000200. SET SR TO 000005. PRESS START. FOLLOW PROGRAM INSTRUCTIONS. THE PROGRAM WILL READ THE TAPE AND REPORT ANY ERRORS. THE SR OPTIONS AVAILABLE WITH THIS PROGRAM ARE: SR15=1 SR13-1 H. IN THE REFER HALT ON ERROR. INHIBIT ERROR PRINT. TO SECTION 6. EXECUTION TIME: IF ERRORS OCCUR. CONTINUOUS RUNNING PROGRAM. SEQ 0007 PAGE 5 PRG6 USE PROCEDURE THIS PROGRAM IS INTENDED AS AN AID READER AND READER LOGIC. A. INSURE THAT TELETYPE IS ON-LINE. LOAD ANY TAPE LOOP IN THE READER. ONE'S AND ZEROES LOOP IS B. C. D. 3 TO RUN: A GOOD CHOICE. LOAD ADDRESS 000200 SET SR TO 000006. PRESS START THE PROGRAM IDENTIFIES ITSELF AND TYPES INSTRUCTIONS TO SET THE SR TO NUMBER OF CHARACTERS TO REAC AND TO NUMBER OF MILLISECONDS TO STALL AFTER RCADING THE F. G. CHARACTERS. PLEASE NOTE: 1. THE LEFT 8 SWITCHES ARE FOR THE NUMBER OF THE RANGE 1S BETWEEN 1 AND 377(8). 2. THE RIGHT 8 SWITCHES ARE FOR SETTING THE NUMBER OF MILLISECONDS TN STALL AFTER READING THE NUMBER OF CHARACTERS TO BE READ. CHARACTERS SPECIFIED. PRESS CONTINUE. THE PROGRAM WILL CONTINUOUSLY READ AND STALL UNTIL STOPPED BY USER. THE SETTINGS OF THE SR MAY BE (HANGED AT ANY TIME. EXECUTION TIME: CONTINUOUS RUNNING PROGRAM. PRG7 USE PROCEDURE inal mMO~Mm>> [) [) () THIS PROGRAM CONTINUOUSLY PUNCHES A BINARY COUNT PATTERN. TO RUN: . 4.8 IN SCOPING AND ADJUSTING THE TAPE WITH THE SPECIAL INSURE THAT TELETYPE IS ON-LINE MAKE SURE THAT THE PUNCH HAS AN ADEQUATE SUPPLY OF THE PROGRAM IDENTIFIES INSTRUCTION LOAD ADDRESS 000200. SET SR 10 000007. PRESS START ITSELF, TC MAKE THE PUNCH READY. PRESS CONTINUE. THE SPECIAL BE PUNCHED UNTIL AND BINARY TYPES TAPE. COUNT PATTERN WILL THE PROGRAM IS STOPPED BY USER. SEQ 0008 PAGE 6 4.9 PRG10 USE PROCEDURE THIS PROGRAM IS INTENDED AS AN AID IN DETERMINING THE OF THE READER. SPEED IT IS NOT INTENDED TO REPLACE REGULAR SCOPING PROCEDURES FOR SETTING THE READER TO ITS CORRECT SPEED. WITH THIS PROGRAM THE READER SPEED CAN BE MEASURED IN TWO WAYS: 1. 2. 30 SECOND MEASUREMENT PERIOD. PLUS OR MINUS 10 CHARACTER ACCURACY 300 SECOND (5 MINUTE) MEASUREMENT PERIOD. PLUS OR MINUS 1 CHARACTER ACCURACY IN EITHER CASE MEASUREMENT ACCURACY DEPENDS ON THE USER'S ATTENTION TO STARTING AND ENDING TIMES OF MEASUREMENT, AS THE TIME INTERVALS ARE DETERMINED BY THE USER USING A SWEEP SECOND HAND WAT(H OR STOP WATC(CH. THE SPECIFIED ACCURACY ASSUMES THAT THE USER WILL TERMINATE THE MEASURING INTERVAL WITHIN ONE SECOND OF THE MEASUREMENT PERIOD. Mmoo A. - . . . G. H. 4.10 TO RUN: INSURE THAT TELETYPE IS ON-LINE MOUNT ANY TAPE LOOP IN READER. LOAD ADDRESS 000200. SET SR TO 000010. PRESS START THE PROGRAM IDENTIFIES ITSELF AND TYPES INSTRUCTIONS TO LOAD READER AND MAKE READY, AND TO SELECT DESIRED MEASUREMENT PERIOD. PRESS CONTINUE WHEN READY WILL START RUNNING. TO START MEASUREMENT. THE READER AT END OF TIME PERIOD, SET SR15 TO A 1 AND BACK TO O AGAIN. THE PROGRAM WILL TYPE READER SPEED IN CHARACTERS PER SECOND AND HALT. TO REPEAT, SELECT THE DESIRED TIME PERIOD WITH SR14, MAKE SURE THAT SR15 IS SET TO O, AND PRESS CONTINUE WHEN READY. PRG11 USE PROCEDURE THIS PROGRAM IS INTENDED AS ‘N AID IN DETERMINING THE PUNCH SPEED. THE SPEED OF THE PUNCH (. \N BE MEASURED WITHIN ONE CHARACTER ACCURACY PROVIDED THE USER PAYS CLOSE ATTENTION TO THE STARTING AND STOPPING TIME OF THE MEASUREMENT PERIOD. THE MEASUREMENT PERIOD IS CONTROLLED oM MOm@O>» BY THE USER USING A SWEEP SECOND WATCH OR STOP WAT(CH. USED IS 60 SECONDS. TO RUN: I . 4.1 INSURE INSURE THAT TELETYPE IS ON-LINE THAT PUNCH HAS AN ADEQUATE LOAD ADDRESS 000200. SET SR TO 000011. PRESS START SUPPLY OF THE PERIOD TAPE. THE PROGRAM IDENTIFIES ITSELF AND TYPES INSTRUCTIONS TO MAKE PUNCH READY. PRESS CONTINUE WHEN REACY TO START. THE PUNCH WILL START RUNNING. AT END OF TIME PERIOD (60 SECONDS), THE PROGRAM WILL TYPE PUNCH SPEED SET SR15 TO A 1 AND BACK TO 0. IN CHARACTER PER SECOND AND HALT. TO REPEAT, MAKE SURE THAT SR15 IS SET TO A 0, AND PRESS CONTINUE. PRG12 USE PROCEDURE THIS PROGRAM S INTENDED TO BE USED AS AN AID IN CHECKING J 1 OUT THE ADDITIONAL LOGIC ADDED TO THE PUNCH CONTROLLER THAT ALLOWS THE PROGRAMMER TO ISSUE 'PUNCH RESET'' UNDER SOF TWARE CONTROL . THIS CODE EXECUTES UNDER OPERATOR INTERVENTION. THE OPERATOR TRIES TO "HANG'' THE PUNCH BY PERFORMING THE FOLLOWING STEPS. 0. FIRST MAKE SURE THE PUNCH IS READY. THE PUNCH KNOB SHOULD BE SET TO THE ''AVAILABLE'' POSITION. RUN THIS TEST THE PUNCH WILL START PUNCHING A BINARY BY LOADING ADDRESS BY LOADING ADDRESS 200, SETTING THE SWITCH REGISTER TO 12 AND HITTING THE START SWITCH. THE PUNCH WILL START PUNCHING A BINARY PATTERN. REMOVE THE PAPER ROLL FROM IT'S HOLDER AND PLACE IT ON THE RIGHT HAND SIDE OF THE PUNCH. (DO NOT TEAR THE PAPER TAPE AND MAKE SURE IT FEEDS CORRFCTLY). THE TEST WILL CONTINUE TO PUNCH OUT AN ENDLESS STREAM OF CHARACTERS. THIS STREAM OF CHARACTERS CAN ONLY BE BY 'HANGING'' THE PUNCH CONTROL LOGIC. INTERRUPTED TO HANG THE CONTROL LOGIC, TURN THE PUNCH 'OFF'' VIA THE "OFFLINE/ONLINE'' KNOB ON THE TOP OF THE PUNCH, WHILE CHARACTERS ARE BEING PUNCHED OUT. MOTOR TO STOP. THIS WILL AT THE CAUSE THE WAIT FOR THE PUNCH PUNCH TO SHUTOFF. THIS POINT PUNCH SHOULD BE HUNG. TO SEE IF THE PUNCH IS HUNG, TURN THE CONTROL KNOB BACK TO “'AVAILABLE''. IF TURNING THE KNOB BACK TO AVAILABLE CAUSES MORE CHARACTERS TO BE PUNCHED, THEN THE PUNCH IS NOT HUNG. IF CHARACTERS ARE BEING PUNCHED OUT, THEN THIS SHUT- OFF PROCESS MUST BE REPEATED UNTIL THE PUNCH HANGS. IF THE PUNCH DOES NOT HANG, START AGAIN AT STEP #2. AFTER THE PUNCH TO "AVAILABLE"'. IF THE IS HUNG, PUNCH DOES HANG, TURN THE THEN THE FUNCTION IS READY TO BE TESTED. CONTROL KNOB BACK PROGRAMMABLE INIT HITTING ‘‘CONTINUE'' ON THE PDP-11 CONTROL PANEL WILL CAUSE THE PROGRAMMABLE INIT TO BE INVOKED. THE PROGRAM WILL CONTINUE TO PUNCH CHARACTERS IF THE INIT IS WORKING CORRECTLY. IF THE PUNCH IS STILL HANGING THEN THE PROGRAMMABLE INIT DID NOT WORK. SWITCH REGISTER OPTIONS: SR14=1 TO SCOPE LOOP ON THE PROGRAMMABLE INIT FUNCTION SEQ 0009 5EQ 0010 PRG13 USE PROCEDURE THIS PROCEDURE IS USED TO DETERMINE IF THE READER LIGHT LOGIC IS WORKING CORRECTLY. IT CHECKS THE ABILITY OF THE READER LIGHT TO BE TURNED OFF UND{R PROGRAM CONTROL. STEPS: RUN THIS TEST BY SELECTING IT VIA THE SWITCH REGISTER AND STARTING AT LOCATION 200. 1. PUT SWITCH 8 OF THE SWITCH REGISTER TO ZERO. PUT THE READER NUMBER IN THE SWITCH REGISTER WHEN THE PROGRAM ASKS FOR IT. AFTER SELECTING A GIVEN READER VIA THE SWITCH REGISTER, TURN THE READER LIGHT 'ON'' BY PRESSING THE MOMENTARY CONTACT ‘ON/OFF’* SWITCH ON THE READER. IF THE READER LIGHT DOES NOT COME ON, THEN EITHER THE LIGHT OR THE SWITCH IS PROBABLY DEFECTIVE. ONCE THE READER LIGHT IS ON, THE OPERATOR SHOULD PUT SWITCH 8 TO A ONE TO TURN IT OFF. THE PROGRAM MONI]TORS THE POSITION OF SWITCH 8. WHEN SWITCH 8 IS ONE, THE PROGRAMS ISSUES A SOF TWARE COMMAND TO TURN THE LIGHT OFF. IF THE LIGHT REMAINS ON AFTER SWITCH 8 HAS BEEN SET TO A ONE, THEN THE READER LOGIC IS DEFECTIVE. IF THE READER LIGHT GOES OFF WHEN SWITCH 8 IS IN THE ONE STATE, THEN THE TEST HAS WORKED CORRECTLY. TO SELECT A NEW READER, PUT SWITCH 12 TO A ONE AND HIT CONTINUE. TO RE-RUN THE CONTINUE. TEST, GO DO STEP 1 SWITCH REGISTER OPTIONS AVAILABLE SR12=1 SR 8=1 SR14=1 AND STEP 2, THEN HIT IN THIS TEST ARE: TO SELECT A NEW READER TO TEST. TO TURN LIGHT OFF ON READER SELECTED. TO DO A SCOPE LOOP ON THE PROGRAMMABLE READER LIGHT DISABLE FUNCTION. SEQ 0011 PAGE 7 PROGRAM AND/OR OPERATOR ACTION 5.1 LOC 002502 COMMON HALT. THAT THAT THIS HALT IS CONTAINED IN A SUBROUTINE IS CALLED BY THOSE PARTS OF THE PROGRAM REQUIRING THE PROCESSOR HALT. THIS HALT NORMALLY OCCURS UPON COMPLETION ON AN INSTRUCTION OR STATUS PRINTOUT. WHEN THE HALT OCCURS, THE CONSO'E DATA LIGHTS DISPLAY THE ADDRESS OF REQUEST. LOC 002032 INSTRUCTION THAT GFNERATED THE HALT ROUTINE END HALT. THIS HALT OCCURS UPON COMPLETION OF THE CURRENT TEST ROUTINE. WHEN THE HALT OCCURS, THE CONSOLE DATA LIGHTS DISPLAY THE NUMBER OF JUST COMPLETED. TO A 1, FOR THOSE PROGRAMS THAT MAKE USE OF (PRGO,PRG1) . 5.2 ROUTINE THE HALT OJCCURS ONLY IF SR10 IS SET THE OP/'ON NORMAL PRINTOUTS NORMAL PRINTOUTS IN THIS PROGRAM SERVE TO IDENTIFY A STARTING PROGRAM, TO PROVIDE INSTRUCTIONS, TO INDICATE STATUS, OR TO SIGNAL AN OPERATOR ERROR. MOST PRINTOUTS ARE SELF-EXPLANATORY. THOSE PRINTOUTS REQUIRING ADDITIONAL EXPLANATION FOLLOW. "*2INVALID PROGRAM'' THE USER HAS SELECTED FOR EXECUTION A NON-EXISTENT PROGRAM. SET IN SR3 THROUGH SRO THE CORRECT PROGRAM NUMBER AND PRESS CONTINUE. "2INVALID TEST"' THE USER HAS SELECTED FOR EXECUTION A NON-EXISTENT ROUTINE. SET CORRECT ROUTINE NUMBER IN SR7 THROUGH SRO AND PRESS CONTINUE. ‘PXX END."' THE SPECIFIED PROGRAM HAS (OMPLETED ONE PASS. SEQ 0012 PAGE 8 ERRORS ARE REPORTED IN THIS PROGRAM BY ONE OF THE FOLLOWING METHODS: A. B. OR ERROR PRINTOUT FOLLOWED BY AN OPTIONAL ERROR HALT. UNCONDITIONAL ERROR HALTS AN UNCONDITIONAL ERROR HALT WILL OCCUR AT THE ADDPESSES LISTED BELOW IF THROUGH HARDWARE OR SOF TWARE FAILURE, PRCGRAM CONTROL IS TRANSFERRED TO AN UNEXPECTED AREA BETWEEN 000000 AND 000776. 000002 - RESERVED AREA. 000006 - ERROR TRAP 000012 -~ RESERVED INSTRUCTION TRAP 000016 - DEBUG TRAP 000022 - IOT TRAP 000026 - POWER FAIL TRAP 000040 THROUGH 000776 - SYSTEM SOF TWARE AND INTERRUPT VECTOR AREA, EXCEPT FOR READERS, PUNCHES,AND TTY VECTORS. TO FIND OUT WHERE PERFORM THE o> . mo 6.1 UNCONDITIONAL ERROR HALTS, . THE FOLLOWING PROGRAM WAS AT STEPS: THE TIME THE FAILURE OCCURRED, EXAMINE CONTENTS OF REGISTER 6 (ADDRESS 177706) TRANSFER THE CONTENTS OF REGISTER 6 TO THE SR, LOAD ADDRESS AND EXAMINE. THE DATA SHOWN IN THE DATA LIGHTS IS THE VALUE OF THE PC WHEN THE FAILURE OCCURRED. THE INSTRUCTION THAT LOCATE IN PROGRAM LISTING THE DISPLAYED PC VALUE. IMMEDIATELY PRECEDES THE ONE REFERENCED BY THE DISPLAYED PC VALUE 1S THE INSTRUCTION THAT WAS/WAS BEING EXECUTED WHEN THE FAILURE OCCURRED. SEQ 0013 PAGE 9 6.2 ERROR PRINTOUTS ERROR PRINTOUTS IN THIS PROGRAM CAN BE ONE OF TWO TYPES: A. NORMAL ERROR PRINTOUTS B. 6.2.1 EXTENDED ERROR PRINTOUTS NORMAL ERROR PRINTOUTS NORMAL ERROR PRINTOUTS ARE GENERATED BY THE 'ERR'' SUBROUTINE. THE ERR SUBROUTINE IS CALLED BY AN 'ERROR'' STATEMENT IN THE PROGRAM LISTING. THE NORMAL ERROR PRINTOUT TAKES THE FORM: "PXX TYYY PC 022227 ICNT vVvVwwv.'' : WHERE PXX IS THE NUMBER OF THE PROGRAM BEING RUN, TYYY IS THE NUMBER OF ROUTINE WHERE FAJLURE OCCURRED. PC 0222271 1S THE ADDRESS FROM WHICH THE ERROR CALLED WAS ICNT VVVVV. IS NUMBER OF TIMES TEST WAS DONE WHEN FAILURE OCCURRED. MEANINGFUL ONLY IN PRGO AND PRG1. AFTER THE PRINTOUT IS (OMPLETED, THE PROGRAM WILL COMMON ERROR HALT AT LOC 002516 IF SR15 IS SET. WHFN THIS A. B. TYPE OF HALT AT ERROR PRINTOUT OCCURS: IN THE PROGRAM LISTING, LOOK UP THE ADDRESS REFERENCED BY P(C022211. OPPOSITE THE PC VALUE AN ERROR STATEMENT WILL BE FOUND, AND IN THE COMMENTS SECTION A DESCRIPTION OF THE FAILURE WILL Bt FOUND . C. 6.2.2 [SSUED. AT THE BEGINNING OF WILL BE FOUND. THE TEST ROUTINE A DESCRIPTION OF THE TEST EXTENDED ERROR PRINTOUTS IN ADDITION TO THE THE INFORMATION TYPED BY THE NORMAL ERROR PRINTOUTS, EXTENDED ERROR PRINTOUTS TYPE INFORMATION THAT DESCRIBES THE OF FAILURE. MOST EXTENDED PRINTOUTS CONCERN THEMSELVES WITH DATA PROBLEMS. THE PRINTOUTS ARE GENERATED BY THE ‘ERRN'‘ SUBROUTINE WHICH IS CALLED BY AN 'ERRORN'' STATEMENT IN THE PROGRAM LISTING. A TYPICAL "PO5 TOOO PRINTOUT WOULD LOOK AS FOLLOWS: PC 011350 ICNT 00000. THE PROGRAM, TEST AND PC DATA ERROR S/B:0371 INFORMATION ARE THE SAME WAS:0071" AS FOR NORMAL ERROR PRINTOUTS. THE PC VALUE ALTHOUGH HAVING THE SAME MEANING, 1S NOT AS MEANINGFUL, SINCE THE ERRN SUBROUTINE MAY BE BEING CALLED BY A COMMON DATA ERROR SUBROUTINE WHICH IS USED BY MORE THAN ONE PROGRAM. TYPE SEQ 0014 PAGE 10 (6.2.2 ONT'D) THE [MPORTANT INFORMATION IN AN EXTENDED ERROR PRINTOUT ARE DESCRIBED BELOW: "EXTENDED'' INFORMATION TYPED. "DATA ERROR S/B XXXX WAS: SOME OF IS THE THE EXTENDED PRINTOUTS YYYY'' DATA READ WITH READER DOES NOT AGREE WITH EXPECTED DATA. S/8 XXXX (SHOULD BE) IS THE EXPECTED DATA. WAS YYYY IS THE RECEIVED DATA. DEPENDING ON THE PROGRAM, THE FAILURE COULD B- CAUSED BY THE READER OR THE PUNCH. EXAMINING THE TAPE WILL SHOW IF THE "REREAD ERROR. TAPE IS PUNCHED CORRECTLY. 1ST READ: XXXX WAS: YYYY'' THIS ERPOR PRINTOUT IS GENERATED BY PRGO TEST14. IT INDICATES THAT A REREAD OF THE READER BUFFER DID NOT AGREE WITH THE ORIGINAL DATA READ FROM THE BUFFER. "SYNC ERROR'' THIS PRINTOUT INDICATES THAT A PROGRAM WAS UNSUCCESSFUL IN SYNCING UP WITH THE SPECIAL BINARY COUNT PATTERN TAPE IN THE READER, OR IN THE CASE OF PRG2, THAT THE PROGRAM HAS NOT READ A SUFFICIENT NUMBER OF THE LEADER CHARACTER (377). TO TRY AGAIN. ZEROES BEFORE SYNCING UP WITH IF HALTED, PRESS CONTINUE ‘LEADER ERRCR S/8: 377 WAS: XX¥X'' OR "LEADER ERROR S/b SETWEEN 0 AnL 3. wWAS: XXXX ONE OR BOTH OF THESE PRINTOUTS IS GENERATED BY PRGZ2 WHEN I READING THE LEADER THAT PRECEDES THE SPECIAL BINARY COUNT P INCHED BY PRG3 THE DATA DOES NOT AGREE WITH THE EXPECTED DATA. THAT THE TAPE DESCRIPTION. IS PUNCHED CORRECTLY. REFER TO PRG1 CHE K AND PRGZ ‘MATCH ERROR'’ THIS PRINTOUT IS GENERATED BY PRGS WHEN UNSUCCESSFUL IN MATCHING UP THE DATA READ FROM THE READER W]TH THE EXPECTED DATA AS SPECIFIED BY SR. CHECK THAT THE TAPE IS THE ONE TO BE READ AND RESTART THE PROGRAM. "FALSE READER INTERRUPT'' OR, "FALSE PUNCH INTERRUPT"' THE PROGRAM DID NOT FIND THE ERROR OR THE DONE BIT AN INTERRUPT. POSSIELY NOISE COULD BE CAUSING THE SET FOLLOWING PROBLEM. SEQ 0015 PAGE 11 MISCELLANEOUS TEST TAPES THE FOLLOWING TEST TAPES ARE RELEASED WITH THIS PROGRAM: A. B. MAINDEC-00-D2G4-PT SPECIAL BIMNARY COUNT PATTERN TEST TAPE. MAINDEC-00-D2G2-PT ONES AND ZEROES TEST TAPE. THE SPECIAL BINARY COUNT PATTERN TAPE IS PUNCHED WITH A PATTERN CONSISTING OF THE NUMBERS 000 THROUGH 377. EA(CH NUMBER IS IMME&AAEELY FOLLOWED BY ITS ONES COMPLEMENT NUMBER. FOR EX LE: 001, 376, 002, 375, 003, 374, 004, 373, ETC. THE EASIEST WAY TO MAKE A SPECIAL BINARY COUNT PATTERN TEST LOOP IS TO OVERLAP THE TAPE AT THE POINT WHERE THE CHARACTERS 377.000,000;377. APPEAR. THAT SEQUENCE OF CHARACTERS APPEARS EVERY 512 (HARACTERS. THEREFORE A MINIMUM SIZE TEST LOOP WOULD CONSIST OF 7.2 512 CHARACTERS. SR OPTIONS THE STANDARD SR OPTIONS ARE DESCRIBED HERE. SR15 - HALT ON ERROR. SR14 ~ SCOPE. THIS OPTION CAUSES THE FRDGRAM TO IgMAIN IN THE CURRENT TEST ROUTINE. WHEN THE OPTION IS REMOVED THE PROGRAM PERFORMS BY THE [EST THE NUMBER OF TIMES SPECIFIED ITS ITERATION COUNT, BEFORE GOING ON TO THE NEXT ROUTINE. SR13 - INHIBIT ERROR PRINT. ERROR PRINTOUTS. SR11 INHIBIT JTERATION. SOME PROGRAMS CONSIST OF INDIVIDUAL TEST ROUTINES. FOR EACH ROUTINE THE FUNCTION BEING TESTED CAN BE TESTED A VARJABLE NUMBER OF TIMES BEFORE THE ROUTINE IS COMPLETED. THE NUMBER OF TIMES THE TEST IS TO BE PERFORMED IS CALLED THE ITERATION COUNT AND IT MAY DIFFER FROM ROUTINE TO ROUTINE. SETTING SR11 Wwi.lL CAUSE THE "ROGRAM TO PERFORM ONLY ONE ITERATION FOR FACH ROUTINE DURING WHICH THE SWITCH IS SET. TWO POSSJBLE USES OF THIS OPTION ARE: = THIS OPTION IF SET WILL REMOVE A.' PAGE (7.2 CONT'D) A. QUICK PASS. SEQ 0016 12 WHEN A PROGRAM RUNS FOR SEVERAL MINUTES FOR ONE PROGRAM PASS, THE USER MAY ELECT TO RUN THROUGH THE PROGRAM QUICKLY TO FIND OUT IF ANY FAILURES SHOW UP IMMEDIATELY. A SUCCESSFUL QUICK PASS HOWEVER, DOES NOT GUARANTEE THAT THE SAME PROGRAM WILL RUN ERRORFREE WHEN PERFORMING A NORMAL B. ITERATION PASS. SKIP OVER FAILING ROUTINE. WHEN A ROUTINE WITH A MULTIPLE ITERATION COUNT HAS DETECTED A SOLID FAILURE, THE ERROR WILL BE REPORTED MANY TIMES. TO GO ON TO THE NEXT ROUTINE IF DESIRED, THE USER CAN INHIBIT ITERATION. IT WILL BE NECESSARY TO SET SR11 ROUTINE AND HALT, TO CAUSE THE PROGRAM TO STOP AT END OF FAILING ROUTINE. OTHERWISE THE PROGRAM WILL QUICKLY RUN THRCUGH THE NEXT ROUTINE ALSO. SR10 - HALT AT END OF CURRENT ROUTINE. PRGO AND PRG1 CONSIST OF INDIVIDUALLY NUMBERED TEST ROUTINES. SETTING SR10 WI.L CAUSE PROGRAM TO HALT UPON COMPLETION OF SR9 - SELECT ROUTINE. ROUTINES, KOUTINE. CURRENT ROUTINE. FOR PROGRAMS THAT CONSIST OF THE USER MAY ELECT INDIVIDUAL TEST TO RUN ONLY A SPECIFIED TO SELECT A ROUTINE SR9 MUST BE SET, AND SR7 THROUGH SRO MUST BE SET TO THE NUMBER OF THE DESIRED ROUTINE. THE SELECTED NUMBER MUST BE A VALID ROUTINE NUMBER FOR THE PROGRAM BEING RUN, OR A USER ERROR PRINTOUT WILL OCCUR. THE PROGRAM WILL RUN THE SELECTED ROUTINE UNTIL THE SELECT ROUTINE OPTION IS CLEARED, OR UNTIL THE SELECTED ROUTINE NUMBER IS CHANGED. IF THE OPTION IS CLEARED, THE PROGRAM WILL PROCEED TO EXECUTE THE REMAINING ROUTINES IN THE PROGRAM. IF THE ROUTINE NUMBER IS CHANGED, WILL EXECUTE THE NEWLY SELECTED ROUTINE. THE PROGRAM SEQ 0017 PAGE 13 7.3 TESTING AT NON-STANDARD ADDRESSES AND/OR VECTORS THIS PROGRAM (AN TEST PA611'S ASSIGNED TO NON-STANDARD ADDRESSES. ALL READERS MUST BE ASSIGNED CONSECUTIVE ADDRESSES, AND ALL PUNCHES MUST BE ASSIGNED CONSECUTIVE ADDRESSES. A. IMMEDIATELY AFTER LOADING THE PROGRAM CHANGE THE FOLLOWING LOCATIONS. REFER TO PROGRAM LISTING. LOCATION 001220 001222 B. FROM STANDARD 172600 172700 TO NON-STANDARD 1ST READER CSR ADDRESS 1ST PUNCH CSR ADDRESS IF THE TELETYPE IS ALSO AT NON STANDARD ADDRESSES, PERFORM THE FOLLOWING CHANGES: LOCATION 001224 001226 001230 001232 001234 001236 001240 001242 FROM STANDARD 177560 177562 177564 177566 000060 000200 000064 000200 THE PROGRAM, T3 NON-STANDARD TTY READER CSR ADDRESS TTY READER BUFFER ADDRESS TTY PRINTER CSR ADDRESS TTY PRINTER BUFFER ADDRESS TTY READER INTERRUPT VECTOR ADDRESS TTY READER PRIORITY LEVEL TTY PRINTER INTEXRUPT VECTOR ADDRESS TTY PRINTER PRIORITY LEVEL C. PROCEED TO USE D. USING STANDARD DUMP ROUTINES, DUMP OUT THE ENTIRE PROGRAM IN ABSOLUTE FORMAT TO HAVE AN UPDATED OBJECT TAPE THAT REFLECTS YOUR SYSTEM, E. OR OR DUMP OUT ONLY LOCATIONS 001224 THROUGH 001242 IN ABSOLUTE FORMAT, AND SPLICE JECT TAPE. OF TAPE BE LOADED LOADED, THE TAPE TO THE END OF THE STANDARD 0B- THIS PROCEDURE WOULD REQUIRE THAT THE SHORT LENGTH IMMEDIATELY AFTER THE MAIN PROGRAM 1S IN ORDER TO OVERLAY LOCATIONgAgg1$£4 THROUGH 001242. DESCRIPTION 8.1 PRGO PROGRAM DESCRIPTION PRGO IS THE PA611 READER TEST. IT CONSISTS OF 22 ROUTINES NUMBERED FROM 00 TO 24(8). THE PROGRAM USES A SPECIAL BINARY COUNT PATTERN TEST TAPE LOOP IN ALL ROUTINES. ROUTINES 00 THROUGH 17 ARE BASIC LOGIC TESTS. ROUTINES 20 THROUGH 24 ARE READER EXERCISER TESTS. IN ROUTINES 20 THROUGH 24 THE READER WILL RESYNC ITSELF AFTER 3 DATA FRRORS HAVE OCCURRED. 8.2 PRG1 PROGRAM DESCRIPTION Mo >» F 2 PRGY IS THE PA611 PUNCH TEST, IT CONSISTS OF 16 ROUTINES NUMBERED FROM 00 TO 17(8). ROUTINES 00 THROUGH 13 ARE BASIC LOGIC TESTS. ROUTINES 14 THROUGH 17 EXERCISE THE PUNCH USING THE FOLLOWING FORMAT: 20 BLANK CHARACTERS SYNC CHARACTER RUBOUT. MODE NUMBER (BETWEEN O AND 3) 4 BLANK CHARACTERS 512 CHARACTERS OF SPECIAL BINARY COUNT PATTERN. RTN14 - PUNCHES 5 DATA BLOCKS AT FULL SPEED. RTN1S - PUNCHES 5 DATA BLOCKS. THE SPECIAL BINARY COUNT PATTERN DATA RTN16 - PUNCHES 5 DATA BLOCKS. THE SPECIAL BINARY IS PUNCHED WITH RANDOM STALLS OF UP TO 47 MSECS. AFTER EACH (HARA(TER. COUNT PATTERN DATA IS PUNCHED WITH RANDOM STALLS OF UP TO 47 MILLISECONDS BE TWEEN GROUPS OF CHARACTERS OF UP TO 15 CHARACTERS. RTN17 - PUNCHES 1 DATA BLOCK. THE SPECIAL BINARY COUNT PATTERN DATA DATA IS PUNCHED WITH A 5 SECOND STALL PRECEDING EACH 32 CHARACTER GROUP PUNCHED. PRGZ PROGRAM DESCRIPTION PRG2 VERIFIES THE PAPER TAPE PROGRAM CONSISTS OF A SINGLE FOLLOWING STEPS: PRODUCED BY PRG1. THE ROUTINE THAT PERFORMS TMOoOM > 8.3 LOOK FOR 10 CONSECUTIVE O CHARACTERS LOOK FOR SYNC CHARACTER (RUBOUT) LOOK FOR MODE #. BETWEEN O AND 3. READ 4 BLANK CHARACTERS THE ROUTINE WILL REPORT EVERY ERROR. READ 512 BINARY (HARACTERS. GO TO STEP A. ON THE THAT THE SPECIAL BINARY EVERY ERROR IT WILL NOT PUNCH BE REPORTED. COUNT PATTERN, CAUSED BY THF SINCE IT IS RESYNC INTENDED SEQ 0018 PAGE 8.4 SEQ 0019 15 PRG3 COMBINED READER-PUNCH TEST - — - - - . - - - G G G S e . - THIS CONTINUOUS RUNNING PROGRAM EXERCISES THE PUNCH AND READER CONCURRENTLY. THE SPECIAL BINARY COUNT PATTERN [S USED IN THIS PROGRAM, A. B. C. WHEN THE CHARACTER COUNT REACHES 40, THE PUNCH ROUTINE WILL STOP PUNCHING. PUNCHING WILL NOT RESUME UNTIL THE CHARA(CTER COUNT IS DECREMENTED TO 31 BY THE READ ROUTINE. IF THE CHARACTER COUNT IS OVER 31, THE READER READS AT D. IF E F 8.5 THE PUNCH PUNCHES DATA AT FULL SPEED. WHEN THE (HARACTER COUNT REACHES 20, THE PUNCH ROUTINE ENABLES THE READER. FULL SPEED. THE CHARACTER COUNT IS 31 OR LESS THE READER WILL READ WITH RANDOM STALLS BETWEEN CHARACTERS. IF THE CHARACTER COUNT BECOMES O, UNTIL THE COUNT CLIMBS TO 20. THE READER STOPS READING THE READ ROUTINE WILL RESYNC AUTOMATICALLY AFTER 3 ERRORS. PRG4 PROGRAM DESCRIPTION PRG4 WILL PUNCH CONTINUOUSLY THE 2 CHARACTERS WHOSE SET IN THE SR. ALL 8.6 1'S TAPE, CODES ARE THE ROUTINE IS USED FOR GENERATING ALL 0'S TAPE, ONES AND ZEROES TAPE, ETC. PRGS PROGRAM DESCRIPTION PRGS READS AND CODES ARE THE SET CHECKS A TAPE IN THE SR. PUNCHED WITH THIS ROUTINE THE CHARACTERS WHOSE IS USEFUL READ PHOTOCELLS AND READ AMPLIF IER. IN SETTING UP 8.7 PRG6 WILL ENABLE THE READER FOR THE NUMBER OF CHARACTERS SPECIFIED IN THE LEFT HALF OF THE SR, AND THEN IT WILL STALL FOR THE NUMBER OF MILLISECONDS SPECIFIED IN THE RIGHT HALF OF THE SR. THIS ROUTINE IS USEFUL IN SETTING UP THE RFADER CLOCK, ACCELERATOR, STROBE, AND FOR CHECKING THE STOP DELAY. PAGE 8.8 PRG7 PROGRAM DESCRIPTION PRG7 PUNCHES THF 8.9 SEQ 0020 16 SPECIAL BINARY COUNT PATTERN CONTINUOUSLY. PRG10 PROGRAM DESCRIPTION - —— - - A G - - - - - . . - - - PRG10 IS A ROUTINE USED TO CHECK THE SPEED OF THE READER. READER SPEED CAN BE MEASURED IN TWO WAYS: A. B. PLUS OR MINUS 10 CHARACTER ACCURACY. PLUS OR MINUS 1 CHARACTER ACCURACY. COARSE. 30 SECOND TIMING. FINE. 300 SECOND TIMING. SR14 INDICATES TO THE ROUTINE THE TIMING PERIOD THE USER IS GOING TO USE. SR14=0 INDICATES 30 SECOND TIMING. THE USER CONTROLS THE DURATION OF THE TIMING PERIOD BY USING A SWEEP SECOND HAND WATCH OR STOP-WATCH. AT THE END OF THE TIMING PERIOD, SR15 IS SET TO A 1 TO OBTAIN A SPEED PRINTOUT. 8.10 PRG11 PROGRAM DESCRIPTION PRG11 IS USED TO CHECK THE SPFED OF THE PUNCH. THE ROUTINE USES A 60 SECOND TIMING PERIOD THAT IS CONTROLLED BY THE USER. AT THE END OF THE TIMING PERIOD SR15 IS SET TO A 1 TO OBTAIN A SPEED PRINTOUT. 8.1 PRG12 PROGRAM DESCRIPTION PROGRAM 12 IS USED TO TEST THE PROGRAMMABLE INIT FEATURE ADDED TO YHE PUNCH CONTROL LOGIC. THE PROGRAM PUNCHES AN ENDLESS BINARY PATTERN, WAITING FOR THE OPERATOR TO HANG THE PUNCH UP. THIS CAN USUALLY BE ACCOMPLISHED BY TURNING THE CONTROL SWITCH OFF AND JIGGLING THE TAPE LOW SENSOR SWITCH WHILE THE PUNCH IS PUNCHING. IF THE PUNCH CYCLE HAS NOT BEEN COMPLETED, READY WILL REMAIN LOW AND THE PUNCH WILL HANG. THE PROGRAM SENSES THIS CONDITION IN A WATCHDOG TIMER LOOP. WHEN THE PROGRAM SEES THAT THE PUNCH IS HUNG, THEN IT TIMES OUT AND HALTS. WHEN THE OPERATOR HITS THE CONTINUE SWITCH, AN INIT PULSE GENERATED BY THE PROGRAM TO RE-INIT THE PUNCH. [THIS INIT PULSE DOES NOT EFFECT OTHER DEVICES ON THE BUS.] UPON HITTING THE THE 8.12 CONTINUE PROCESS REPEATS SWITCH, ITSELF. PRG13 PROGRAM DFSCRIPTION THIS PROGRAM LIGHT TO BE S USED TO (HECK THE ABILITY OF TURNED OFF UNDER PROGRAM (ONTROL. THE READER IS ASSUMING THAT THE READER LIGHT IS ON, BY THE PROGRAM ARE: 1. GETY 2. CHECK SWITCH 8. 3. THE ADDRESS OF THE READER THE STEPS PERFORMED TO BE TESTED IS SELECTED VIA CONSOLE TTY RESPONSE) IF SWITCH 8=1 TURN THE LIGHT OFF. SWITCH AND LOOP ON THIS STEP. IF (READER THEN ISSUE A COMMAND TO SWITCH 8=0 THEN RECHECK THE CHECK SWITCH 12. IF SW12=1 THEN GO TO STEP 1. IF SW12=0 THEN GO TO STEP 2. I SEQ 0021 PAG11 MACY11 30A(1052) 14=-JUN-78 13-JUN-78 12:38 OO0 NN NN = CZPAAC.P11 14:20 PAGE 1 SEQ 0022 ;STORED IN DECTAPE LIB12 - MIKE MITCHELL 3/75 ;TYPESET 11 READER-PUNCH TESTS ;COPYRIGHT 1972, DIGITAL EQUIPMENT (CORP., MAYNARD, MASS. LTITLE .ABS .ENABLE AMA LIST .NLIST PA611 ME MD,SEQ .LIST SRC :PRGO - READER TEST ;PRGY1 - PUNCH TEST ;PRG2 = PUNCH VERIFY ROUTINE ;PRG3 - COMBINED READER-PUNCH TEST :PRG4 = PUNCH 2 CHARACTERS FROM SR. :PRG5 -~ READ 2 CHARACTERS AS PER SR. ;PRG6 - READ X CHARS, STALL Y MSECS. ;PRG7 = PUNCH SPECIAL BINARY COUNT PATTERN TAPE. :PRG10 - READER SPEED PRINT ROUTINE. ;PRG11 - PUNCH SPEED PRINT ROUTINE. ;PRG12 - PUNCH INIT TEST :PRG13 -~ READER LIGHT TEST. ;SR ;SR ;SR SR ;SR JSR 15 - HALT-ON-ERROR. 14 - SCOPF. 13 - INHIBIT ERROR PRINT. 11 - INHIBIT ITERATION. 10 = HALT AT END OF CURRENT ROUTINE. 9 - SELECT RCUTINE. ;SR 8 - TURN READER LIGHT OFF (PRG13 ONLY) ;SR 7 THROUGH SR ) - NUMBER OF ROUTINE TO BE SELECTED. JPUNCH............ 772776-772700 JREADER............ 772676-772600 ;RDRO==~==~~ 172600 JRDR]======-- 172604 JRDR2======~ 172610 ;RDR3~-==-uuue 172614 000000 000002 000004 000006 000010 000012 000000 000002 000000 000006 000000 000012 000000 . 0 4 HALT MACHER: .+2 HALT .+2 HALT JUNASSIGNED TRAP .SP OVERFLOW, BUS ERROR TRAP JRESERVED INSTRUCTION TRAP PA61IT MACY1T CZPAAC.P1T 000014 000016 000020 000022 000024 000026 000030 000032 000034 000036 30A(1052) 14-JUN-78 13-JUN-78 12:38 002376 000340 002426 000340 000026 000000 002176 000340 000036 000002 000040 14:20 PAGE 2 TRCV: 10Tv: EMTV: TRPV: Sv5s PRTY?7 000774 001200 000240 000000 100000 100000 040000 020000 010000 004000 002000 001000 000400 000200 000100 000040 000020 000010 000004 000002 000001 000000 000001 000002 000003 000004 000005 000006 000007 000007 005746 024646 005726 022626 000340 000300 00240 000200 000140 ;TRACE RS5S TRAP ;TRAP TO CALL PRTY?7 .+ I0X ;POWER FAIL TRAP HALT ;EMT TRAP EMTINT PRTY?7 .42 ;TRAP TRAP. SIMILAR TO EMT. JEXIT TRAP CALL. RTI .=40 ;LOCATIONS 40 THROUGH 776 ARE FILLED WITH .+2 AND HALT. NLIST LLIST 177570 177776 177746 SEQ 0023 ME ME JEQUATE STATEMENTS SR=177570 PSW=177776 CACHE: 177746 SPBOT=1200 NOP=240 OPEN=0 MANUAL=BIT15 BIT15=100000 B1T714=40000 BI1T713=20000 BIT12=10000 B81T11=4000 B81710=2000 BIT9=1000 BI78=400 BIT7=200 BIT6=100 BIT5=40 BIT4=20 BIT3=10 BIT2=4 BIT1=2 BIT0=1 RO=X0 R1=X1 R2=%2 R3=23 R&-24 R5=X5 R6-%X6 R7=%7 PC=X7 PUSH=005746 PUSH2=024646 POPSP=005726 POPSP2=022626 PRTY7=340 PRTY6=300 PRTY5=240 PRTY4=200 PRTY3=140 ; FOR CONTROL REGISTER FOR 11-70 14-JUN-78 PA611 MACY11 30A(1052) 13-JUN-78 12:38 CZPAAC.P11 14:20 PAGE 3 PRTYZ2=100 PRTY1=40 PRTY0=0 000100 000040 000000 000007 177777 177777 177777 000003 000040 BELL=007 POTLST==1 P1TLST=-1 TLAST==1 TRC=3 1=40 A=BIT15 B=BIT14 100000 040000 000060 000062 000200 020000 000100 000000 000003 000004 000060 002510 000340 00 001000 001002 001004 001010 001200 001202 001204 001206 001210 001212 001214 001216 001220 001222 001224 001226 001230 001232 001234 001236 001240 001242 001244 001246 001250 001252 001254 001256 001260 001262 001264 001266 001270 SEQ 0024 C=BIT13 IE=BIT6 EMTX=0 SAV5S=3 RST5S5=4 .=60 ;KEYBOARD VECTOR SETUP, KBSV( PRTY7 .=200 JMP .=1000 001450 NOP NOP CLR JMP 001252 001450 .=1200 OPEN PRB: OPEN PPS: OPEN PP8: OPEN RDRVTR: OPEN : PRTY4 RDRLVL PCHVTR: OPEN PCHLVL: PRTY4 FSTRDR: 172600 FSTPCH: 172700 PRS: TKS: TKB: TPS: TPB: TKVTR: TKLVL: iPVTR: TPLVL : FSTVCT: 177560 177562 177564 177566 ;STATUS UPON KEYBOARD INTERRUPT. START ;GO TO START OF PROGRAM. INITD START JRESET INIT SWITCH. ;GO TO START OF PROGRAM. JREADER (SR ;READER BUFFER JPUNCH CSR sPUNCH BUFFER JREADER INTERRUPT VECTOR JREADER PRIORITY LEVEL ;sPUNCH INTERRUPT VECTOR sPUNCH PRIORITY LEVEL ;ADDR OF 1ST READER. ;ADDR OF 1ST PUNCH. ;LSR CSR ;LSR BUFFER ;LSP CSR ;LSP BUFFER :LSR INTERRUPT VECTOR cLSR PRIORITY LEVEL ;LSP INTERRUPT VECTOR .LSP PRIORITY LEVEL RDRL IM: PCHLIM: INITD: PRGNUM: KSTART: CURTST: RTNNO: NXTST: 000000 ICNT: ICTR: ;CONTAINS CURRENT PROGRAMA :CURRENT PROGRAM START ADDRESS. ;CONTAINS ADDR OF CURRENT TEST. sCONTAINS CURRENT TEST 4. ;CONTAINS ADDR OF NEXT TEST. *CONTAINS CURRENT ITERATION COUNT PA611 MACY1 CZPAAC.P11 30A(1052) 14=JUN-78 13-JUN-78 12:38 001272 001274 000000 000000 005244 006716 010206 010570 011342 011414 011674 011762 012034 012156 012306 012542 001340 001346 001350 001354 001356 001360 001362 001364 001364 001370 001372 001374 001376 001400 001402 001404 001406 001410 001412 001414 001416 001420 001422 001424 001426 001430 001432 001434 001436 001440 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 000000 002012 002452 14:20 PAGE & SEQ 0025 SCOPTR: OPEN PRGID: ;CONTAINS CURRENT SCOPE POINTER. OPEN ;CONTAINS PROGRAM INDICATORS PRGTAB: PRGO ;PRGO START ADDRESS PRG1 ;PRG1 PRG2 PRG3 PRGS PRGS PRG6 PRG7 PRG10 PRG11 :OPERATOR ]NTERVENTION TESTS: PRG12 PRG13 ERRT: OPEN START ADDRESS ;PRG2 START ADDRESS :PRG3 START ADDRESS ;PRG4 START ADDRESS ;PRGS START ADDRESS ;PRG6 START ADDRESS ;PRG7 START ADDRESS ;PRG10 START ADDRESS ;PRG11 START ADDRESS ;PUNCH TEST (OPR INTV.) JREADER LIGH TEST ;(OPR INTV REQD.) RCNT: OPEN ;CHARACTER COUNT CRBUF: CHR1: CHRZ: CHR3: OPEN OPEN OPEN OPEN ;HOLDS ONE CHARACTER FROM READER. PCHOUT: ERCTR: OPEN OPEN PCHMSK: OPEN RDRMSK: OPEN CTRA: CTRB: CTRC: CTRD: FPC: EMTTAR: OPEN OPEN OPEN OPEN OPEN NLIST MC CHAINN SRSETT ;POINTER FOR EMT CALL SCOPE JPOINTER FOR EMT CALL SRESET Sv05S ;POINTER FOR EMT CALL SAVO5 Sv03 RSO3 ;POINTER FOR EMT CALL SAVOQ3 JPOINTER FOR EMT CALL RSTOQ3 RSOS Sv05S RS05S ;POINTER FOR EMT CALL RSTOS JPOINTER FOR EMT CALL SAVO0SS :POINTER FOR EMT CALL RSTOSS STAL JPOINTER FOR EMT CALL STALL TYP TYPS STPTRYV STPTIPY ERR ERRN DACNVY BDCNVV RNGEN INRNDN BMOVV CHLT EHLT INBINN ;POINTER FOR EMT CALL TYPE ;POINTER FOR EMT CALL TYPES ;POINTER FOR EMT CALL STRDRV ;POINTER FOR EMT CALL STPCHV ;POINTER FOR EMT CALL ERROR ;POINTER FOR EMT CALL ERRORN JPOINTER sPOINTER JPOINTER :POINTER :POINTER ;POINTER ;PUINTER ;POINTER FOR FOR FOR FOR FOR FOR FOR FOR EMT EMT EMT EMT EMT EMT EMT EMT CALL CALL CALL CALL CALL CALL CALL CALL OACNYV BD(CNV RNDNUM INRND BMOVE CHALT EHALT INBIN PA611 MACY11 CZPAAC.P11 30A(1052) 14-JUN-78 13-JUN-78 12:38 001442 001444 001446 003274 003216 003064 001450 001454 001460 001462 001464 001466 00147C 001472 001474 001476 001500 001506 001510 001512 001514 001516 001520 001526 001530 001532 001534 001536 001540 001546 001554 001556 001560 001562 001564 001570 001574 001602 001610 001612 012706 005737 001041 001614 001620 001624 001632 001636 001642 001646 001652 001654 001656 001660 001662 001664 001670 001672 001674 001700 001702 16:20 PAGE 5 START: 001200 001252 104011 177570 CHALT 001244 MOV TYPES CHALT mMovs TYPES SELPCH 001246 0007490 010037 006300 104001 000170 104011 012704 ;TYPE TITLE. ;TYPE INSTRUCTIONS TO SET RDR O VECTOR. SR,FSTV(CT ;SAVE RDRO VECTOR. sTYPE INSTRUCTIONS TO SET # OF READERS. SR,RDRLIM ;SAVE # OF READERS. SR,PCHLIM ;SAVE # OF PUNCHES. JINITIALIZATION COMPLETE. ;TYPE INSTRUCTIONS TO SET # OF PUNCHES. 1?23 177570 177777 CHALT Movs MOV TYPE RUNINS 001250 001252 104024 101404 104010 012641 104024 ;SET BOTTOM OF SP STACK. ;SEE IF PROGRAM IS INITIALIZED. ;BR IF YES. 1723 013120 014041 177777 000776 013746 013746 012737 052737 000401 022626 012637 012637 012737 004737 013700 042700 020027 INITD STRTA SELRDR 104024 113737 104011 012737 104010 013013 MC #SPBOT ,R6 ;POINTER FOR EMT CALL GETBNR JPOINTER FOR EMT CALL GETBNP ;POINTER FOR EMT CALL DELAY 1?23 013067 014041 177777 104024 113737 MOV TST TYPE PGTIT TYPES MSVCTR 012752 104011 013035 014041 177777 104024 GTBINR GTBINP DLYN LLIST BNE 104010 013737 SEQ 0026 000004 000006 001612 000014 000004 000774 000006 000004 000340 177776 005174 STRTA: CHALT BR MOV @44, —(SP) MOV JSR MoV BIC CMP 000013 ;SAVE CONTENTS OF ADDRESS 4 APRTY7, PSW PC, BLOS TYPE CM2 CHALT 001276 JRESTART MESSAGE. SAVE CONTENTS OF ADDRESS 6 MOV a#6, -(SP) ; MOV #CCHE, awé ;LOAD FOR TIMEOUT WITH NON CACHE PROCESSOR BIS #14, a#CACHE ;DISABLE CACHE BR AROUND ; BRANCH AROUND FOR CACHE PROCESSORS CCHE: CMP (SP)+, (SP)+ : CLEAN UP THE STACK FOR NON CACHE PROC. JRESTORE CONTENTS OF 6 AROUND: MOV (SP)+,a46 sJRESTORE CONTENTS OF 4 MOV (SP)+, a#4 177570 177760 001254 #=1,INITD STRIR: SRSET: BR MOV ASL SRESET JMP TYPES ASETSR CLNUP SR.RO #177760,RO RO,#13 STRTB STRTA RO, PRGNUM RO aPRGTAB(0) ;SET PRIORITY 7 ;GO DO CLEAN-UP ;GET PROGRAM NUMBER. ;VALID PROGRAM NUMBER? ;BR IF YES. ;TYPE INCORRECT PROGRAM MESSAGE . s TRY AGAIN. s SAVE PROGRAM NUMBER. JRC TIMES 2. JSYSTEM RESET. ;GO TO SELECTED PROGRAM. ;TYPE SR OPTION MESSAGE. 16=-JUN-78 MACY11 30A(1052) 13-JUN-78 12:38 CZPAAC.P11 PAG1 001704 001706 001710 001712 001720 001726 001732 001734 001740 001746 001750 001754 001760 001764 001770 001772 14 :20 PAGE 6 IM23 014041 177777 104024 =1 013737 012737 012706 001256 000340 003¢00 004737 032737 002136 0010G0 013700 042700 177304 177570 177600 001262 104001 001002 000177 123700 001767 022737 001355 SEQ 0027 177777 001264 177776 GETRDY: GTRDYX: 177570 GTRDYA: GTRDYB: CHALT MOV MOV MOV SRESET JSR BIT JMP GORUN: GTRDYC: MOV 001264 GTRDYD: CMP 104010 KSTART ,NXTST APRTY7 ,PSW #SPBOT ,R6 R7,FORWD #81T9,SR GTRDY(C aCURTST SR,RO #177600,R0 RTNNO,RO GORUN #-1 NXTST GTRDYA 012664 104024 000740 012706 005237 00100, 005137 032737 001402 000177 032737 001003 005337 001367 032737 001403 013700 000000 032737 001301 022737 001300 001200 001266 CHAINN: MOV #SPBOT ,R6 HRIT14,SR CHNA aSCOPTR 001266 040C00 177570 CHNAC: BIT 177226 004000 17757C CHNAB: CHNA: 177570 CHNAA: UMP BIT BNE DEC BNE BIT BEQ 001270 002000 001262 001000 177570 177777 001264 CHNB: 104017 001254 012631 000002 104010 012626 000666 002142 002156 002162 002174 013705 012537 012537 012537 012537 010537 012737 000207 GETRDY MOV HALT 8IT BNE CMP BNE OACNV ICNT CHNAC ICNT #BIT11,SR CHNAA ICTR CHNAB #81T10,SR CHNB RTNNO,RO #8]1T9,SR GETRDY #-1 NXTST GTRDYX PRGNUM APN 2 TYPE APGEND 001264 001262 001264 001270 001272 001260 000001 FORWD: 001266 FORWDA: B8R MOV MOV MOV MOV MOV MOV MOV RTS ;COMMON HALT. ;JADDR OF 1ST ROUTINE TO NXTST ;SET PRIORITY 7. ;SET BOTTOM OF STACK. s ISSUE RESET. ;ROLL FORWARD TO ‘NEXT'' ROUTINE. sCHECK SELECT ROUTINE SWITCH JBRANCH [F SELECT ROUTINE SWITCH IS SET. 2GO RUN CURRENT ROUTINE. ;(SR) TO RO sMASK UNDESIRED BITS ;COMPARE RTNNO TO (RO) sBR IF ROUTINE FOUND. ;NO. CHECK FOR LAST ROUTINE. JBRANCH IF NOT LAST ROUTINE. :TYPE INCORRECT RTN SELECTED. ;COMMON HALT. ;START OVER. ;JRESTORE STACK. s INCREMENT ITERATICN COUNT. ;BR IF RESULT NOT 0. JRESULT 0. RESET ICNT TO ~1. ;CHECK FOR SCOPE OPTION. sBRANCH [F SCOPE SW NOT SET. JRETURN TO ROUTINE. JTEST INHIBIT ITERATION SWITCH ;BRANCH IF INHIBIT ITERATION SW SET. ;DECRFMENT ITERATION COUNT. ;BRANCH IF COUNT NOT O. JROUTINE END HALT SW SET? (SR10) ;BRANCH IF NOT SET. ;TEST # TO RO. JROUTINE END HALT. TEST # IN LIGHTS. ;CHECK SELECT ROUTINE SWITCH ;BRANCH IF SELECT RTN SW SET JLAST TEST? JBRANCH IF NOT LAST TEST. ;CONVERT PROGRAM NUMBER TO ASCII. ;TYPE PROGRAM END BELL. GETRDY NXTST ,R5 (5)+,RTNNO (5)+ NXTST (5)+,ICTR (5)+,SCOPTR R5,CURTST ;GO REPEAT PROGRAM. ;ADDR OF NEXT ROUTINE TO RS. JGET NEXT ROUTINE NUMBER. R7 JEXIT FORWD SUBROUTINE. #1,1CNT JEMT INTERPRETER ROUTINE. ;GET ADDR OF NEXT 'NEXT'' ROUTINE. sGET ITERATION COUNT. ;GET SCOPE LOOP ENTRY POINTER. sADDR OF NOW CURRENT TEST TO CURTST. JPRESET ICNT T0 1. PA611 MACY11 CZPAAC.P11 002176 14=-JUN-78 13-JUN-78 12:38 30A(1052) 010046 016600 014000 006300 016000 000200 012666 012666 012737 000415 164:20 PAGE RO,=(6) :PUSH RO. MOV -(0),R0O ;GET EMT CALL. MOV EMTTAB=-10000(0) ,RO ASL 171364 RTS MOV 002302 MOV BR 002302 SVO0SS: 012737 012666 012666 010546 010446 010346 010246 010146 010046 000002 177762 177762 002302 SVO05: 010566 022626 012600 012601 012602 012603 012604 012605 016646 016646 000002 012666 012666 010546 010446 RO (6)+,-10.(6) #RT],SVOSC #NOP,SVOS5C SVO5A SVOSA: MoV #RT]1,SVOSC MOV MOV R5,-(6) R4 .,-(6) SVOS5C: MOV MOV MOV (6)+,-14,(6) (6)+,-14.(6) ;MOVE PC UPSTACK. ;MOVE STATUS UPSTACK. R2,=(6) RTI MOV MOV 16. (6) ,RS RS5.R4 MOV MOV PUSH?2 RS03: POPSP2 MOV MOV MOV MoV MOV MOV 177766 177766 RTI ;MOVE PC AND PSW UPSTACK. R3,-(6) L 101Y) R1,-(6) RO,-(6) -(4) JRESTORE REGS 0 TO 3 SUBROUTINE. JRTI OR NOP. JEMT PC TO RS. JEXIT. (6)+.R0O :RESTORE REGS O TO 4. (6)+ ,R3 =10.(6),-(6) =10.(6),-(6) ;MOVE PC AND PSW DOWN STACK. (6)+,R] (6)+,R2 JEXIT. ;SUB TO SET RS IN EMT PC AND RESTORE REGS O T05. RS05S: MoV R5.,16. (6) MOV MOV MOV MOV MOV MoV MOV MOV RT1 (6)+,R0 (6)+,R1 (6)+,R2 (6)+,R3 ;SUB TO RESTORE REGS 0 TO 5. RSOS5: POPSP?2 177762 177762 177772 177772 ;FORM EMT ROUTINE ADDR. ;GO TO EMT ROUTINE; RESTORE RO. :SUB TO SAVE REGS 0 TO S. Sv058: 000020 JTIMES 2. Sv058 MoV B8R TST RTI 016646 000002 RO JGET EMT PC. :SUB TO SAVE REGS O TO S AND PLACE EMT PC IN RS. 000240 022626 012600 012601 012602 012603 016646 2(6),RC ;SAVE REGS O TO 3 SUBROUTINE. Sv03: MOV (6)+,=-10.(6) 012737 000403 000020 SEQ 0028 EMTINT: MOV MOV 000002 177766 177766 000002 7 SvV5S: ;SET EMT PC TO RS5 CONTENTS. (6)+,R4 (6)+,RS =14.(6),~(6) =14.(6),-(6) ;MOVE PC AND PSW DOWNSTACK. MOV (6)+,-6(6) ;PC AND PSW UPSTACK. MoV R5,=-(6) MOV MOV (6)+,-6(6) R4 ,-(6) JEXIT. ;SAVE RS. ;SAVE R4, PAGIT 14-JUN-78 MACY11 30A(1052) 13-JUN-78 12:38 CZPAAC.P1N 002412 002414 002420 002422 002424 002426 002432 002434 002436 002440 002444 002450 002452 002454 002460 002462 002466 002470 002472 002476 002500 002506 026646 016605 010504 005744 000002 010566 022626 012604 012605 016646 016646 000002 104004 000042 002510 00216 00254 00253 002534 002536 017727 042737 022737 001401 000002 013707 176512 000200 000003 002542 00254« 002546 002550 0025¢2 104006 002576 002604 002610 002612 002614 002616 002620 RSSS: 177772 177772 005737 001403 052777 000002 002566 002574 PUSHZ MOV Mov 000010 052525 002554 0025€0 002562 002564 PAGE 8 000010 012700 005100 010037 000005 104005 14 :20 002/ RTI MOV COM MOV RESET 176516 000000 002514 002514 104017 001362 015072 000006 000003 010537 162737 104017 002714 015040 000006 ;RS TO EMT PC. (6)+,R4 (6)+,RS -6(6),-(6) -6(6) ,-(6) #52525,R0 RO RO,SRSETT+4 KBSV(C: aTKB, 40 MOV BIC (MP BtQ SAVO0S5S MOV HALT RSTO5S 000406 002716 000240 001362 002716 EHLTA: ERR: ERRN: TST 8PL T HAL RTI MOV BR MOV MOV OACNV INTERRUPTS. ;DATA T0 RO. s COMPLEMENT (RO). ;(RO) TO SRSETT+4. JRESET. RO IS DISPLAYED. ;LOADED FROM DECTAPE? ;BR IF NOT. :EN??LE KEYBOARD INTERRUPTS. JEXIT. ;READ KEYBOARD BUFFER. a6l ,PC JEXIT TO DECTAPE MONITOR. R4 RO RTI EHLT: 17 JEXIT. ;CLEAR PARITY BIT. ;IS IT CTRL C? ;BR IF YES. -CONDITIONAL ERROR HALT ROUTINE. 177570 ;RESTORE RS. H#BIT7 ,KBSV(+4 #3,KBSVC+4 R . COMMON HALT ROUTINE CHLT: JRESTORE R4. AND ENABLE KEYBOARD ;KEYBOARD SERVICE ROUTINE. RTI 000002 000002 012737 000403 012737 010437 JEXIT EMT SuB. R5.8.(6) ksl SRSETA #B1T6,3TKS 104007 100001 000000 JEMT PC TO R4. -(4) RSTO5 TST BEQ BIS SRSETA: RTI MOV 000042 010400 000000 005737 MOV POPSP2 Mov MOV MOV MOV JEMT PC TO RS. 8.(6).,RS RS .R4 JROUTINE TO ISSUE RESET SRSETT: SAVOS5 5 000100 TST RTI SEQ 0029 SR EHLTA #406 ,ERRNB ERRN+6 #NOP , ERRNB R4, FPC JNO. EXIT. ;DEVELOP ADDR OF CALLER. JHALT CALL ADDR IN DATA LIGTHS. JEXIT. ;CHECK FOR HALT ON ERROR. ;BRANCH IF NO HALT DESIRED. JHALT. :IN DATA LJIGHTS. ;SET UP FOR SINGLE MESSAGE. JSET UP FOR MULTIPLE MESSAGES. ;CONVERT CALL ADDR OF SUB CALLING. FPC AFPC 002714 000002 002714 6 SAVSS MOV SuB OACNV ERRB AP( 6 RS ,ERRB #2 ,ERRB ;SAVE REG 5S ;DETERMINE CALLING ADDR. ;CONVERT CALLING ADDR TO ASCII. PA611T MACY11 30A(1052) 16~JUN-78 13-JUN-78 12:38 CZPAAC.P11 002644 002646 002650 002652 002654 002656 002660 002662 002664 002666 002670 002672 002674 002702 002710 002712 002714 002716 002720 002724 002732 002734 002736 002740 002742 002744 002746 002750 002754 002756 002760 002762 002766 002770 002774 002776 003002 003006 003010 003012 003016 003022 003026 003032 003034 003036 003042 003050 003052 003054 003056 003060 003062 14:20 PAGE 9 104017 001254 015024 000002 104017 001262 015031 000003 002714 177570 ERRNA: ERRB: ERRNB: 002714 ERRNC: TYP: 012500 000003 012527 022737 001002 000004 000002 104010 000000 000765 BDCNV ;CONVERT ICNT TO DECIMAL ASCII. MOV #EMO,ERRB ;TYPE ERR HEADER MSG IF NOT BNE TYPE ERRNB JBR TO INHIBIT. s TYPE MSG. BIT OPEN OPEN Mov cMP BNE EHALT RSTSS #RI1T13,SR (5)+,ERRB #-1,ERRB ERRNA INHIBITED. JINHIBIT ERR PRINT? ;DESIRED MSG ADDR GOES HERE. ;NOP OR 406 ;GET ADDR OF NEXT MSG. ; TERMINATOR? ;GO TYPE IF NOT TERMINATOR. JEND OF MSGS. HALT IF REQUIRED. JRESTORE REG 5S. SJEXIT EMT SUB. ;SUBROUTINE TO OUTPUT ASCI1 MESSAGE ON TELETYPE PRINTER. 104006 000745 ;CONVERT TEST # TO ASCII. RT] 000002 100375 OACNV ICNT gICNT 002714 177777 110177 105777 s CONVERT PROGRAM # TO ASCII. RTNNO gTNUMB 015021 020000 001002 104007 000002 122701 001411 004737 000764 OACNV PRGNUM SPNUMB 104020 001266 015055 112001 122701 SEQ 0030 TYPA: 000100 SAV0SS MOV TYPC: 002776 ;ADDRESS OF MESSAGE TO RO. TYPC ;BRANCH IF NOT'Q''. (0)+,R1 #100,R1 RSTOSS RTI (MPB #45 R ;TERMINATOR CHAR. ;CHECK FOR'X''. JSR R7,TYPD ;TYPE CHAR IN R1 BNE 000045 (5)+,R0 MOVB CMPB BEQ 176230 176222 TYPD: 000015 002776 000012 002776 TYPF: BR MOVB TSTB BPL RTS MOVB TYPG: MOVB JSR JSR BR TYPF TYPA R1,aTPB aTPS .4 R7 #15,R1 R7,TYPD #12,R1 R7,TYPD TYPA ;GET CHARACTER ;CHECK FOR' '@ 'CHARACTER DONE. EXIT. :BRANCH IF' X"’ ;OUTPUT (HARACTER TO PRINTER JWAIT FOR DONE FLAG. JEXIT :MOVE CARRIAGE RETURN CODE ;GO TYPE CHAR. ;MOVE LF CODE TO R1. TO R? GO TYPE (HAR. ;SUBROUTINE TO OUTPUT A SERIES OF ASCII MESSAGES ON TELETYPE PRINTER 003060 177777 TYPS: 003060 SAVS5S MOV (MP gggsS TYPSA: TYPSB: RT] TYPE OPEN BR (5)+,TYPSB #-1,TYPSB TYPSA TYPS+? ;ADDR OF MESSAGE TO TYPSB. ;CHECK FOR TERMINATOR sBRANCH IF NOT TERMINATOR. ;TERMINATOR, EXIT JCALL ON TYP SUB TO TYPE MESSAGE ;ADDRESS OF MESSAGE GOES HERE ;GO PROCESS NEXT MESSAGE ;SUBROUTINE TO DELAY A SPECIFIED NUMBER OF MILLISECONDS PA611 MACY11 (ZPAAC.P11 14=-JUN-78 13-JUN-78 12:38 003064 003070 003074 003076 003102 003104 003110 003112 30A(1052) 062716 003124 000002 017700 000022 011637 104002 001406 012701 005301 001376 005300 001372 104003 000002 000000 000000 003130 003136 003144 003152 003160 003166 003174 003176 003200 003202 003204 003206 003210 003212 003214 012737 013737 013737 013737 013737 013737 000002 000000 000000 000000 000000 000000 000000 000000 000000 177777 003176 003176 003176 003176 003176 003216 003224 003230 003234 003236 013737 005137 005137 001002 005237 043737 013737 013737 013737 000002 003202 003204 003200 013737 005137 005137 003206 003210 003176 005237 043737 013737 013737 000002 003.10 001350 003210 003210 104006 013500 003352 012501 012502 PAGE DLYN: DLYAN: 000303 003114 003116 003120 003122 003124 003126 001002 14:20 DLYBN: DLYCN: 003176 003200 003202 003204 003206 003210 MOV ADD SAV03 (6) ,DLCNT #2,(6) MOV #303.R1 BNE DEC BNE DLYBN RO DLYAN MOV BEQ DEC RSTO03 R1 JGET EMT PC. JSET UP EXIT PC. ;SAVE REGS ;DELAY COUNT T0 RO. ;BR IF 0. ;1 MSEC COUNT TO R1. ;DECREMENT 1 MSEC COUNT. ;BR IF NOT 0. :DECREMENT DELAY COUNT. ;BR IF NOT DONE DELAYING. RTI #-1,RIND MOV RIND,RTO MOV MOV MOV MOV RIND: PIND: RTI OPEN OPEN PT1: OPEN RIND,PIND RIND,PTO RIND,PT1 RIND ,RT1 ;SET ALL VARIABLES JEXIT. OPEN OPEN OPEN OPEN OPEN sSPECIAL BINARY COUNT PATTERN SUBROUTINE (PUNCH) PTO.PT1 ;PREVIOUS BIN CHAR TO PT1 GTBINP: MOV COM COM BNE 003204 003202 003214 001332 003210 @DLCNT RO DLY(CN INBINN: MOV RTO: RT1: BINR: SINP: 003204 001346 003204 003204 003204 SEQ 0031 JEXIT. OPEN DLCNT: OPEN DLCTR: :SUBROUTINE TO INITIALIZE BINARY COUNT PATTERNS PT0: 003204 10 PT1 PIND .+6 INC BIC MOV PT1 PCHMSK ,PT1 PT1.PTO MOV PT1,PCHOUT MOV RTI PT1,BINP ;SAVE BIN CHAR IN PTO ;BIN CHAR TO BINP. JEXIT. ;SPECIAL BINARY COUNT PATTERN SUBROUTINE (READER) GTBINR: MOV COM COM BNE INC BIC MOV MOV 003210 003206 003212 RTI RTO,RT1 RT1 JPREVIOUS BIN CHAR TO RT1. RIND . +6 RT1 RDRMSK ,RT1 RT1,RTO RT1,BINR :SAVE BIN CHAR IN RTO. ;BIN CHAR TO BINR. JEXIT. JEMT SUB TO CONVERT OCTAL TO ASC 11. SAVO0SS s SAVE REGS. MOV 3(5)+,RO ;JGET OCTAL VALUE. MOV (5)+,R] ;GET DESTINATION ADDR. MOV (5)+,R2 JGET CONVERT COUNT. OACNVV: PA611 MACY11 30A(1052) 14=-JUN-78 13-JUN~78 12:38 CZPAAC.P11 003354 003356 003260 003364 003370 003372 003376 003400 003402 060201 910003 042703 062703 110341 042700 14:20 003436 003440 003444 003446 003452 003456 003462 003470 003474 003500 003504 003506 003512 003516 003520 003522 003524 003526 003530 003532 03536 003542 03544 003550 003552 (03556 003564 003570 003572 003574 003576 003600 11 ADD VA: MOV OACN 8IC 177770 000060 ADD MOvB BIC ROR ROR ROR DEC 000007 003404 003406 003410 003412 003414 003416 003420 003422 003424 003426 003430 003432 003434 PAGE SEQ 0032 R2.R1 RO,R3 #177770,R3 #60,R3 R3,-(1) #7,RO RO sBRANCH IF NOT DONE. JRESTORE REGS. RTI ;DONE. EXIT. .EMT SUB TO MOVE VARIABLE NUMBER OF BYTES. SAVO5S BMOVV: ;SAVE REGS. MOV (5)+,R1 ' ‘ADDRESS ET FROM' :G 104006 012501 012502 012503 BMOVA: 005303 001375 104007 000002 012700 013501 012537 012537 012702 012737 012237 004737 003612 163700 010037 104023 000000 000000 000000 104007 000002 003524 003520 003522 003524 003600 000005 003576 003532 003572 005037 003574 003576 005237 000772 063701 062737 003574 163701 103403 113720 000207 000000 000000 000000 023420 003576 000060 003574 MOV MoV MovB (5)+,R2 (5)+,R3 (1)+,(2)+ R3 ;GET''TO' 'ADDRESS MOV MOV MOV Mov MOV MOV MOV JSR DEC #DECVAL RO #ADTENP ,R2 #S5,CNVCTR (2)+,TENPWR ;SET UP ADDR TO STORE DECIMAL ASCII ;BINARY VALUE TO R1. ;DESTINATION ADDR TO BDCNVC. ;CHAR COUNT TO BDCNVD. ;ADDR OF TEN POWER STRING TO RZ2. ;SET UP FOR 5 POWER CONVERSIONS. ;MOVE POWER OF TEN VALUE TO TENFWR. BDCNVA ;DONE 5 CONVERSIONS? JBRANCH IF NOT YET 5. JGET COUNT <MOVE BYTE DEC ;DECREMENT COUNT BMOVA ;BRANCH ]F NOT DONE. :RESTORE REGS. JDONE. EXIT. SEMT SUB TO CONVERT BINARY TO DECIMAL ASCII. BDCNVV: SAV0SS ;SAVE REGS. 112122 005337 001371 s ISOLATE LEAST SIGNIFICANT DIGIT. ;CONVERT DIGIT TO ASCII. sSTORE ASCII CHARACTER. ;DONE ALL DIGITS? BNE RSTOSS 104006 ;DEVELOP ADDR TO STORE 1ST (HAR. 003572 BDCNVA: BNE SUB MoV BMOVE BDCNVB: OPEN BDCNVC: OPEN BDCNVD: OPEN RSTOS5S SUBTEN: SUBTNA: 003574 SUBTNB: RT! CLR SuB BCS INC BR ADD ADD MOVB RTS OPEN CNVCTR: DIGIT: OPEN TENPWR: OPEN ADTENP: 10000. (5 + R (5)+ ,BDCNVC (5)+ ,BDCNVD R7,SUBTEN CNVCTR BDCNVD RO IN RO ;PERFORM CONVERSION RO,BDCNVB DIGIT TENPWR ,R1 SUBTNB DIGIT SUBTNA TENPWR ,R1 #60,DIGIT DIGIT,(0)+ R7 JRESTORE REGS. JYES. EXIT. ;CLEAR DIGIT ;SUBTRACT TEN POWER FROM BINARY VALUE. JBRANCH IF UNSUCCESSFUL SUBTRACTION. ;RESTORE SUBTRACTED VALUE. ;CONVERT (DIGIT) TO ASCII :?Oyg ASCI] CHAR TO DECVAI JEXIT. FIELD. PA611 MACYi1 CZPAAC.PI 30A(1052) 164-JUN-78 13-JUN-78 12:38 001750 000144 000012 000001 040 040 104006 013700 006100 006100 063700 010037 006100 006100 063700 006100 006100 010037 013725 104007 000002 040 040 14:20 040 040 003672 003674 003674 003672 MOV MOV RSTOSS RP1: RP2: 012737 012737 001233 007622 003714 003720 003722 003724 003730 003732 003734 003736 003742 003744 003746 003750 003752 003754 003760 003762 003764 003770 003772 003774 003776 004000 004002 105277 104031 000014 105777 175260 004004 004012 004016 017637 062716 013701 000022 105777 100404 104016 015377 1727777 000760 005777 100401 000207 004737 000751 104016 014635 .BYTE 003672 003674 SEQ 0033 040,040,040,040,040,040 ;EMT RANDOM NUMBER GENERATOR. NUMBER IS STORED AT LOC AFTER SUB C(CALL. RNGEN: SAVO05S Mov RP1,R0O 003674 003672 003676 003704 003712 100411 104031 DECVAL: 1000. 100. 10. 1 ROL ROL ADD MoV ROL ROL ADD ROL ROL 001233 007622 000002 PAGE 12 RO RO RPZ2 RO RO,RP1 RO RO RPZ2,R0O RO RO RO,RP?2 RP1,(5)+ RTI 1233 JEXIT. 7622 ;EMT SUB TO INITIALIZE RANDOM NUMBER GENERATOR. INRNDN: MOV MOV #1233 ,RP1 #7622 ,RP2 RTI SROUTINE TO FETCH A CHARACTER AREAD: INCB aPRS ?SLAY 175250 TSTR 175236 @PRS ARDC: TSM2: 013243 JWAIT 12 MSECS FOR READER DONE. :DONE SET? ;BR IF YES. JWAIT ADDT'L TSTR aPRS ;READER DONE NOW? ARDB 18 MSECS. :BR IF YES. ;ERROR. E?? 003772 :READER ENABLE. ARDR ERRORN ARDR: JEXIT. 8MI ?gLAY BMI] 175220 ;STORE # AT LOC AFTER SUB CALL. NO READER RESPONSE. BR [ST AREAD aPRS :TRY AGAIN. ;ERROR BIT SET? RTS X7 JNO. Ml JSR BR ER?ORN SM ARDC(C ;BR ir YES. 27.,TSM2 EXIT. :TYPE READER ERROR MESSAGE. AREAD :TRY AGAIN, :TYPE READER ERROR MESSAGE. 1?6 177777 000207 000000 000002 001210 004024 S ROUTINE RTS 17 TO SET READER STPTRV: MOV ADD MOV JEXIT INTERRUPT VECTOR AND PRIORITY 3(6) ,STPRA+? #2,3%6 RDRVTR, %1 ;MOVE VECTOR ADDR TO STPRA+?2 JSET UP EXIT PAG1T 14=-JUN-78 MACY11 30A(1052) 13-JUN-78 12:38 CZPAAC.P11 004022 004026 004032 012721 013721 000002 000000 001212 017637 062716 013701 012721 013721 000000 000002 001214 000000 001216 000002 104015 004146 RREBERY OSSN D WWWNNON) = RRERRER — b i ) —d o ® 004114 052777 005037 012737 005337 001375 005077 104016 14 :20 004054 PAGE 005077 017737 000207 022626 012737 005777 100003 004737 000735 105777 100755 104016 SEQ 0034 #OPEN, (1) + RDRLVL.(1)+ MOV RTI ;ROUTINE TO SET PUNCH INTERRUPT STPRA: MOV STPTPV: MOV ADD STPPA: MOV MOV MOV RT] @(6) ,STPPA+? #2,a%6 %1 PCHVTR, #OPEN, (1) + PCHLVL, (1) + 000101 177776 072460 004210 175102 CLR 004210 MOV DEC BNE CLR ERRORN 175056 PSW #30000. ,BRCTR BRCTR .4 aPRS EM? 175042 175040 000340 175016 001334 177776 BREADA: BREADB: 003772 175002 -1 BR (LR MOV RTS POPSP2 MOV TST BPL JSR BREADC: TSTB BRCTR: OPEN 177777 000726 000000 104021 000000 043737 001772 013737 VECTOR AND PRIORITY. ;MOVE VECTOR ADDR TO STPPA+?2 JSET UP EXIT sSET VECTOR ADDRESS. ;SET PRIORITY JEXIT. : SUBROUTINE TO READ CHARACTER FRGM READER USING INTERRUPT. STRDRV ;SET READER VECTOR BREADB :TO BREADB #1071 ,3PRS BIS JENABLE PTR AND PTRI. ;SET UP PRTYO. ;DELAY APPROX. 150 MSECS. sCLEAR PTRI ENABLE. ;TYPE NO PTR RESPONSE ;MESSAGE BREAD aPRS aPRB, CRBUF 174 APRTY7 ,PSW aPRS BREADC PC,TSM2 BREAD aPRS BREADA 015421 104021 000000 043737 001405 013737 104031 000000 000002 000000 ;SET VECTOR ADDRESS 2SET PRIORITY JEXIT BREAD: 015377 177777 000755 13 ;TRY AGAIN. . CLEAR READER (SR. ;CHAR READ TO CRBUF. JEXIT SUBROUTINE. ;RESTORE STA(CK. ;SET UP PRTY?Z. ;TEST FOR ERROR. ;BRANCH IF NO ERROR. “TEST FOR DONE BIT. ‘BRANCH IF DONE BIT SET. *ERROR.FALSE READER INTERRUPT. BREAD s SUBROUTINE TO STALL A RANDOM NUMBER OF MILLISECONDS. MAXIMUM STALL .DETERMINED BY CONTENTS OF LOC STLMSK. STAL: RNDNUM ;GET RANDOM NUMBER. 004242 004214 004214 004236 004270 004246 004246 004272 STLA: OPEN BIC BEQ MOV DELAY STALA: OPEN STALB: RTI] STLMSK: OPEN STLMSK,STLA STALB STLA,STALA NUMBER GOES HERE. JAPPLY STALL MASK. ;BRANCH IF RESULT IS 0. ;DELAY sDELAY COUNT ;DONE. EXIT. ;STALL MASK. . SUBROUTINE TO GENERATE RANDOM CHARACTER COUNT (1-77) GRCNT: RNDNUM JGET RANDOM NUMBER. GRCNTA: OPEN sNUMBER GOES HERE. BIC BEQ MOV RCMSK,GRCNTA GRCNT GRCNTA ,RNCNT JAPPLY MASK. ;TRY AGAIN [F RESULT O JCOUNT 10 RNCNT PAG1 14-JUN-78 MACY11 30A(1052) 13-JUN-78 12:38 CZPAAC.P11 004266 004270 004272 164:20 000207 PAGE 14 RTS 000000 000000 RCMSK: RNCNT: BCHECK: GETBNR 004344 004350 104027 023737 001001 000207 104017 003212 015126 000004 104017 001334 015141 000004 104015 015103 177777 005337 001002 0047%/7 006207 004352 004354 004360 004 364 004370 004376 004402 004410 004414 004422 004426 004430 004436 004440 004442 004737 004737 004737 013737 004737 013737 004737 013737 004737 000751 012737 000207 104004 012700 004064 004064 004064 013701 003212 013702 003212 013703 020137 001012 020237 001007 020337 001004 104005 062716 000207 005300 001350 003212 001336 004274 004276 004 304 004306 004310 004312 004314 004316 004320 004322 004324 004326 004330 004332 004334 004336 004342 104026 104027 104027 104027 OPEN OPEN SEQ@ 0035 1 ¥4 JEXIT. JRANDOM (HARACTER MASK. .RANDOM (HARACTER COUNT. ;5UB TO COMPARE DATA REAC FROM READER AGAINST EXPECTED DATA AND REPORT ERRORS. 003212 001334 CMP BNE RTS OACNV BINR BINR, CRBUF . +4 x7 ;GET BIN CHARA(TER ;COMPARE BINR TO DATA IN CRBUF ;BRANCH IF NOT SAME (ERROR). JOK.EXIT. ASB 4 OACNV CRBUF AWAS 4 ERRORN E?1 001344 004352 001334 004064 001334 001336 001334 004440 001342 000003 001344 004064 001000 :DECREMENT ERROR COUNTER JBRANCH IF NO THIRD ERROR %7 .,BSYNC JSR JRESYNC THE READER. RTS 194 JEXIT. . SUBROUTINE TO SYNC THE READER TO A SPECIAL BINARY COUNT PATTERN TEST TAPE. INBIN BSYNC: JINITIALIZE BINARY PATTERN JSR %7 .BREAD ;READ CHAR. JSR %7 ,BREAD ;READ CHAR. X7 ,BREAD JSR JREAD (CHAR AND STORE AT (HR1 , CHR1 CRBUF MOV X7 ,BREAD JSR JREAD CHAR AND STORE AT CHR? MOV CRBUF , CHR? JSR X7 ,BREAD ;READ CHAR AND STORE AT CHR3. MoV CRBUF , CHR3 X7 ,SYNCA JSR ;GO SYNC BR BSYNC ;NO SYNC. TRY AGAIN. MOV #3,ERCTR RTS X7 sSUCCESS.EXIT. SYNCA: SAVO5 MOV #512. ,RO ;SET UP FOR 512 TRIES. DEC BNE 001340 SYNCB: 001340 GETBNR MOV GETBNR MoV GETBNR MOV CMP BNE SYNCC: BINR,R? (MP CMP R3,CHR3 BNE RSTOS ADD 000002 BINR,R1 BINR,R3 R1,CHR1 SYNCC R2,CHR? BNE 001342 ERCTR . +6 RTS DEC BNE SYNCC SYNCC #2,(6) PC RO SYN(CB JGET BIN CHAR. ;STORE AT R1. ;GET BIN (HAR. ;STORE AT R2. ;GET BIN CHAR. ;STORE AT R3. ;MATCH ON 1ST WORD? JBR IF NOT. ;MATCH ON 2ND WORD? JBR IF NOT. JMATCH ON 3RD WORD? BR IF NOT. JSET UP SINCED EXIT. JEXIT. JTRIED 512 TIMES? ;BR IF NOT. 14=-JUN~78 MACY11 30A(1052) 13-JUN-78 12:38 CZPAAC.P11 PA61 004526 004530 14:20 PAGE 15 SEQ 0036 ;YES. SYNC ERROR. ERRORN 104016 015220 177777 ET3 000207 RTS PC 1ST8 BPL aPPS CPRDYA RSTOS 104005 005777 100404 105777 174440 174432 CPRDYA: 104024 000763 004737 043737 013777 105777 100375 000207 004540 001346 001332 174366 001332 103403 104010 015616 000764 013737 006337 006337 063737 013737 062737 013737 005237 006037 006337 063737 006337 006337 063737 012737 005737 100003 012737 104017 177570 015670 RTS TYPES SM3 1716 x7 CHALT BR CPRDY BIC PCHMSK ,PCHOUT BPL RTS .4 .74 ;TEST FOR READY BIT. ;BRANCH [F READY NOT SET. JOK. EXIT. :TYPE NOT READY MESSAGE. ;SUBROUTINE TO PUNCH CHARACTER IN LOC PCHOUT. HSPCH: JSR X7 ,CPRDY GO CHECK FOR PUNCH READY. 174374 MOV 1518 PCHOUT ,aPPB aPPS ;LOAD PUNCH BUFFER. JWAIT FOR DONE. ;DONE. EXIT. ;SUBROUTINE TO SELECT PUNCH TO BE TESTED/USED. PCHSEL: TYPES ;TYPE SELECT PUNCH MESSAGE. 104011 015547 014041 177777 104024 123737 ;SYNC ERROR EXIT. . SUBROUTINE TO CHECK FOR PUNCH READY. CPRDY: TST aPPS sTEST FOR ERROR BIT. CPRDYA 8M] JBRANCH [F ERROR BIT SET. SPCHM 1723 177570 177570 001204 001204 001222 001204 000002 001246 001214 001214 001214 177570 001214 001214 001244 177400 177570 177700 CHALT 001250 001204 CMPB BLO TYPE PCHSLA: 001204 001206 001206 001214 MOV ASL ASL ADD MOV ADD MOV INC ROR ASL ADD ASL ASL ADD MOV TST BPL 001214 001214 001346 001346 INVRP BR PCHSLB: MoV OACNV SR APCHID SR,PCHLIM PCHSLA ;JWAIT FOR USER. ;VALID PUNCH NUMBER? JBR IF YES. JNO. TYPE MESSAGE, AND PCHSEL ;GO TRY AGAIN. ;DEVELOP PCH CSR ADDR. PPS ,PP8B #2,PPB RDRL IM,PCHVTR PCHVTR PCHVTR PCHVTR SR,PCHVTR PCHVTR PCHVTR FSTVCT ,PCHVTR #177400,PCHMSK SR PCHSLB ;DEVELOP PCH BUFFER ADDR. SR,PPS PPS PPS FSTPCH,PPS #177700,PCHMSK ;DEVELOP PCH VECTOR ADDR. ;IF RDRLIM WAS ODD INCR TO MAKE IT EVEN. ;SET UP PUNCH MASK FOR 8 LEVEL. ;8 LEVEL PUNCH? JBR IF YES. JNO. SET JUP 6 LEVEL MASK, ;CONVERT SELECTED PCH NUMBER TO ASCII. 14-JUN-78 PA611 MACY11 30A(1052) 13-JUN-78 12:38 CZPAAC.P11 005010 005012 005014 005016 00502C 005022 005024 005026 005030 005032 005040 005042 005044 005046 005050 005056 005062 005066 $05074 005102 005110 005116 005122 005126 005134 005142 005146 005150 005156 005160 005162 005164 005166 005170 005172 005174 005200 005204 005212 005216 005222 005224 005226 005232 005234 005240 005242 14:20 PAGE 16 2 000002 TYPE PCHIDM RTS 104010 015663 000207 JTYPE PCH SELECTED MESSAGE. JEXIT. PC ;SUBROUTINE TO SELECT READER TO BE TESTED/USED. 104011 RDRSEL: 015500 014041 127777 104024 123737 103403 104010 015616 SEQ 0037 sTYPE SELECT READER MESSAGE. TYPES SRDRM ImM23 177570 177570 001200 001200 001220 001200 000002 177570 001213 001210 001244 177400 177570 177700 SR.RDRLIM 001246 001200 RDRSLA 001350 MOV 001000 000004 CLNUP: 001344 TYPE RDRIDM RTS CLR CLR MOV MOV MOV CLNUPA: MOV (LR (MP 8EQ ADD BR CLNUPB: RTS TYPE MESSAGE AND TRY AGAIN. :DEVELOP RDR (SR ADDR. PRS ,PRB #2.PRB ;DEVELOP READER BUFFER ADDR. SR,RDRVTR :DEVELOP RDR VECTOR ADDR. #177400,RDRMSK SR :;SET UP 8LEVEL READER MASK. ;8 LEVEL READER? #177700,RDRMSK :NO. RDRVTR RDRVIR FSTVCT ,RDRVIR TST BPL MOV RDRSLB: OACNV SR ARDRID ;VALID READER? YES. ;NO. SR.PRS PRS PRS FSTRDR,PRS RDRSLB 2 001266 001262 000003 000300 000302 IF RDRSEL RDRSLA: 001200 001202 001202 001210 001210 001350 ;BR JWAIT FOR USER. ;BR IF YES. SET UP 6 LEVEL MASK. ;CONVERT SELECTED RDR NUMBER TO ASCII. ;TYPE RDR SELECTED MESSAGE. PC JEXIT. RTNNO ;CLEAR CURRENT ROUTINE NUMBER. ICNT #3 ,ERCTR #300,R1 #302,R2 R2,(1)+ (1)+ R2.1000 CLNUPS #4 ,R2 CLNUPA PC JCLEAR ITERATION COUNT. ;SET ERROR COUNT TO 3. JCLEAR INTERRUPT VECTORS. JEXIT. PA611 MACY11 30A(1052) 14=JUN-78 13-JUN-78 12:38 CZPAAC.P11 177777 000000 012737 005266 013267 004737 000137 005020 001700 005266 005270 005272 005274 000000 005316 001750 005304 000000 005276 005304 005310 005312 005314 005316 005316 005316 005320 005322 005324 PAGE 17 SEQ 0038 :PRGO - REA?ER TESTS 005244 005252 005254 005256 005262 005266 005266 104010 14:20 001256 PRGO: Y=0 MOV #POTO ,KSTART TITLO JSR JMP TSTA TSTAA PC ,RDRSEL ;SELECT READER. SRSET :GO GET STARTED. POA,1000. POA,1000.,\X+1,\Xx+2,\Y TYPE ;ADDR OF ;TYPE 1ST ROUTINE TO KSTART. TITLE. :t*ttt*tttttttittttt*fitti*t*tttittttttttt*t*tt**t*tt*tit*tkttttfitttitttfit 012737 005777 104000 104015 104000 POTO: O ; PRGO ROUTINE O 1000. POAA1 JTEST ITERATION COUNT ;SCOPE ENTRY POINT POT1 * ;ADDRESS OF NEXT ROUTINE X=X+ * * * ;t*tfit*Qttttttttt**tttttit'ttt*ttfifit*tfitfi*tfit*tttttttt*tttttttt*t*t'tlttt 005312 173670 000004 sTEST ABILITY TO REFERENCE THE READER STATUS WORD POAA: POAE: S 001750 005334 000001 #POAE ,MACHER SCOPE TSTA TSTAA ;STATUS WORD P08,1000. POB,1000.,\X+1,\x+2,\Y TST SCOPE ERROR 3823332232382 POT1: 000001 005346 MOV aPRS 32223333228822822322 1 POT2 1000. POBA1 ;SET UP MACHINE ERROR TRAP, JREFERENCE READER STATUS WORD. : SCOPE ;sERROR. TRAPPED WHEN REFERENCING READER (PRS). 238220223280t 2002RR0023022302008 0000t RRRRRRd . PRGO ROUTINE 1 ;ADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT :SCOPE ENTRY POINT X=X+ * * * * 2222222323228 223223232322322232323232323232323232232222222822222822222322334802822282Rd3%RRRE] 005342 012737 005777 104000 104015 104000 POBB: 005346 005350 005352 005354 000002 005422 001750 005356 000002 POT2: 173642 000004 STEST ABILITY "0 REFERENCE THE READER BUFFER. 005326 005334 005340 005342 005344 005346 005346 POBA: MOV TST SCOPE ERROR SCOPE TSTA TSTAA #POBB ,MACHER aPRB ;SET UP MACHINE ERROR TRAP. JREFERENCE READER BUFFER : SCOPE ;ERROR. TRAPPED WHEN REFERENCING ;READER BUFFER. (PRB) POD,1000. POD,1000.,\X+1,\X+2,\Y ;tttittttttifittttttttttttttt*ttl*i*tt*fi*fit*fitfittitfitttttttittt*tttttttttt 005356 005364 005372 005374 052777 032777 001002 005376 104000 104015 2 POT3 1000. PODA1 : PRGO ROUTINE 2 :ADDRESS OF NEXT ROUTINE ;TEST ITERATION COUNT ;SCOPE ENTRY POINT X=X+ * * * * ;ttttttttttttttfitttttttt't.ittlttt*ttittfi*ttittitfittfikttfittitttttifi'ttttfi 000100 000100 173614 173606 JTEST ABILITY TO SET AND CLEAR THE ID BIT (INTERRUPT ENABLE (BIT 6)) . IN READER STATUS WORD PODA: BIS #R T6,dPRS ;SET ID BIT BNE ERROR PODB ;1D BIT SET? ;TO.PSQROR. FAILED TO SET ID BIT 8IT SCOPE #3]1T6,aPRS (BIT 6) ;CHECK ID BIT IN PRS JIN . IN READER PRS (BIT 6) PA611 MACY11 30A(1052) 164=JUN-78 13-JUN-78 12:38 CZPAAC.P11 005400 005406 005414 005416 005420 005422 005422 042777 032777 001401 005422 005424 005426 000003 005456 000144 005432 000003 005430 005432 005440 005442 005450 005452 005454 005456 005456 005456 005460 005462 005464 000100 000100 14:20 173572 173564 PAGE 18 PODB: 104015 104000 BIC BIT BEQ E?Rgg 0 TSTA TSTAA SEQ 0039 #BIT6,aPRS #B1T6,aPRS R ;CLEAR ID BIT IN PRS. JCHECK ID BIT IN PRS :BRANCH IF BIT CLEAR. JERROR. ID BIT IN PRS FAILED TO CLEAR. POE, 100. POE,100.,\X+1,\X+2,\Y ttttttfitttt*ttttttttt*ttttittttttttttt*tt*tifit*ttt*ttttttttitttttttt*ti* POT3: ; PRGO ROUTINE 3 ;ADDRESS OF NEXT ROUTINE :TEST ITERATION COUNT ;SCOPE ENTRY POINT X-X+ * * * * :ttt*ttttti*ttittittt*ittttttit*tfiiQtttit*it*tttt*tttttitttttt*tttttttttt 052777 000100 173540 032777 001401 000100 173530 104001 3 POT4 100. POEA1 sTEST ABILITY TO CLLCAR ID BIT POEA: 104015 104000 BIS SRESET BIT BEQ ERROR SCOPE TSTA TSTAA #81T76,aPRS #BIT6,aPRS .+ (BIT 6) WITH RESET INSTRUCTION .S5cT ID BIT IN PRS JI.ESET ;TEST ID BIT ;BRANCH IF ID BIT IS CLEAR. JERROR. RESET INSTRUCTION FAILED TO ;CLEAR ID BIT IN READER PRS. POF ,100. POF,100.,\X+1,\X+2,\Y :t*ttttttttttfitt*t*tifititttt**tfitttttfittt*tt*kttt*t*tttttt**tttt*ttfittttt POT4: 000004 005510 000144 005466 000004 4 ; PRGO ROUTINE 4 POT5 100. POFA1 ;ADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT X=X+ * * * * :ttt*t*tttttttttI*tttttttttttttttt*t*tfitttt*t**tttfitfittt*ttttttttttt*tttt ;TEST THAT DONE BIT (BIT 7 OF PRS) IS SET NO LATER THAN 100 MSECS AFTER RDR ENB. POFA: INC aPRS ;ENABLE READER ?gbAY JWAIT APPROX 100 MILLISECS. 005466 005472 005474 005476 005502 005504 005277 104031 000144 105777 100401 005506 005510 005510 104000 POFB: 005510 005512 005514 005516 000005 005542 001750 005520 000005 POTS5: 005520 005524 005526 005530 005534 005536 005540 173506 TSTB 8M] ERROR 173476 104015 SCOPE TSTA TSTAA aPRS POFB ;TEST FOR DONE (BIT 7) ;BRANCH [F DONE BIT WAS SET.. ;ERROR, 100 MSECS AFTER READER JENABLE, DONE BIT WAS NOT SET. ; SCOPE P0G, 1000. P0G,1000.,\X+1,\X+2,\Y :tttttttttfitfifit*ttttt*ttttttitttt**t*fitfittfifitttttttttfitittttttttttttfitttt 005277 1040317 000144 105777 100401 104015 104000 5 POT6 1000. POGA1 ; PRGO ROUTINE 5 ;ADDRESS OF NEXT ROUTINE sTEST ITERATION COUNT ;SCOPE ENTRY POINT X=X+ * * * * t*ttttt*ttltttttt*tt*ttitttttttttlittt*ttfittt*ttttttttittttttttttttfitttfi 173454 173444 STEST ABILITY TO READ DONE BIT (BIT 7 OF PRS) RELIABLY POGA: INC aPRS TSTB @PRS ?gbAY BM] ERROR SCOPE .+4 ;ENABLE READER ‘WAIT APPROX 100 MILLISECS :TEST DONE BIT (BIT 7 OF PRS) *BRANCH IF DONE BIT SET "ERROR. DONE BIT NOT SET, OR FAILED ;TO READ IT. PA61T MACY11 CZPAAC.P11 30A(1052) 14-JUN~78 13-JUN-78 12:38 TSTAA POT6: 000006 005612 000144 005552 000006 005277 005570 005572 005576 005600 005602 005604 005606 005610 005612 005612 000005 105777 005612 005614 005616 005620 000007 005A54 000144 POH,100. POH,10C. ,\X+1,\X+2,\Y 104031 000062 105777 100005 100403 104000 104015 104000 104015 104000 6 POT7 ; PRGO ROUTINE 6 ;ADDRESS OF NEXT ROUTINE * * POHA1 .SCOPE ENTRY POINT . 100. JTEST ITERATION COUNT X=X+ 2223222233322 22223 3222222822202 1734622 232 02822332202 2002 * 2 RiR2RRRtRititdtalls ] ITEST THAT RESET COMMAND CLFARS DONE BIT (BIT 7 OF PRS) POHA : 173412 INC aPRS ;ENABLE READER TST8B BPL aPRS POHB ;TEST FOR DONE BIT JBRANCH IF DONE BIT NOT SET ggLAY RESET TST8 173402 POHB: POHC: BMI SCOPE g?ggg ERROR SCOPE TSTA TSTAA aPRS POHC ;DELAY APPROX 50 MILLISECONDS JRESET ;TEST DONE BIT sBRANCH IF DONE BIT STILL SET. ; SCOPE JERROR 1. DONE BIT NOT SET. JERROR 2. DONE BIT NOT RESET BY JRESET INSTRUCTION. POI,100. POI,100.,\X+1,\X+2,\Y ;**it*t***ttt*t*tfiitt**i*tttitttttttfi**t*tittttiittttktttttttttttt*fitti't POT?7: 0056¢'2 000007 005622 005624 005630 005634 005636 005642 005646 005650 005652 005654 005654 104001 005277 105777 100375 005277 105777 005654 005656 005660 005662 000010 005714 000144 005664 100001 104015 104000 7 ; PRGO ROUTINE 7 * 100. POIA1 sTEST ITERATION COUNT :SCOPE ENTRY POINT * * POT10 AL2aZL 200028 2Rttt 00t it Rttt * Ao 2Rt RRRtAREdl STEST THAT DONE BIT (BIT 7 OF PRS) IS CLEARED WHEN ENABLING THE READER 173350 173344 POIA: SRESET INC TSTB @PRS aPRS JRESET ;ENABLE READER ;TEST FOR DONE BIT 1STB aPRS ;TEST DONE BIT AGAIN B8PL INC 173336 173332 BPL ERROR SCOPE TSTA TSTAA 3222322232222 POT10: 000010 005277 105777 100375 005777 ;ADDRESS OF NEXT ROUTINE X=X+ M 005664 005670 005674 005676 SEQ 0040 :ttfi'.tttiittti'ttfitttt'tQt"'iti‘ltfitittiitlflttttttttt'tl.ttt'ttttfit"tt 005552 005556 005560 005562 005566 PAGE 19 TSTA 005542 005542 005542 005544 005546 005550 14: 20 .~4 @dPRS .t ;BRANCH IF DONE BIT NOT SET cENABLE READER AGAIN ;BRANCH IF DONE BIT IS RESET ;READER ENABLE DID NOT CLEAR DONE BIT ; SCOPE P0J.,100. P0J,100.,\X+1,\X+2,\Y 2222222222232 10 POT11 100. POJA1 38823 0200222 00000002 RtRRRARStRttRRRtllt )] : PRGO ROUTINE 10 ;ADDRESS OF NEXT ROUTINE sJTEST ITERATION COUNT ;SCOPE ENTRY POINT X=X+ * * * * ;ti*tt**tttfitttikttttttttttttttttfittti*ttt*ttfitttt*ttitttttttttttttttttti 173310 173304 173300 cTEST POJA: THAT DONE BIT IS CLEARED BY REFERENCING READER BUFFER INC aPRS ;ENABLE READER TSTB aPRS cTEST FOR DONE BIT BPL TST .~ aPRB ;BRANCH IF DONE BIT NOT SET. SREFERENCE RtADER BUFFER (PRB) (PRB) PAG11 MA(CY11 CZPAAC.PI 30A(1052) 14-JUN-78 13-JUN-78 12:38 005702 005706 005710 005712 005714 005714 105777 100001 104015 104000 005714 005716 005720 005722 000011 006016 000144 005724 000011 005724 005730 005734 005742 005750 005756 005760 005762 005764 005766 005770 005772 005774 005776 006000 006002 006004 14 :20 PAGE 20 173272 TSTR aPRS ERROR SCOPE TSTA POM,100. 8PL TSTAA 012700 POT11: FOR DONE BIT JBRANCH IF DONE BIT IS CLEAR. JERROR 1. DONE BIT WAS NOT CLEARED ;BY REFERENCING READER BUFFER. POM,100.,\X+1,\X+2 \V ; M1 POT12 100. POMA PRGO ROUTINE 11 * * * * -ADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT X=X+1 t'tttttfittt.!fitttttt'tQtiiiittttttttt*tiit*fifittfittttt*i*ttttt*itt*tttttt 000144 003714 173242 173234 001336 001336 001340 001340 STEST ABJLITY TO READ READER BUFFER RELIABLY. POMA: MOV #100.,%0 ;SET COUNT TO 100 IN RO JSR %7 ,AREAD ;GET CHARACTER aPRB., CHR1 MOV :C(PRB) TO CHR1 POM3: MOV @PRB, CHR2 ;C(PRB) TO (HRZ2 (MP BNE DEC BNE POMC: SCOPE OACNV CHR1,CHRZ POMC X0 POMB CHR1 ;COMPARE CHR1 AND CHRZ2. ;BRANCH IF R1 AND R2 DON'T MATCH : SCOPE ;CORRECT 1ST READ DATA TO ASCII ORGRD 4 OACNV CHR2 EUBRD ;ERROR. REREAD OF PRB DID NOT MATCH JINITIAL DATA READ FROM PRB. ERRORN ETZ 104000 SCOPE TSTA TSTAA 2283222322232 006016 006020 006022 006024 R TA ;TEST ;tttfittttttttt.fittfittttt"t'tIti.ttttttttttttifififi.itifitl.ttQttttfitttttttt 006006 006010 006012 006014 006016 006016 SEQ 0041 000012 006060 000144 006026 000012 POT12: 104001 PONA: 004737 005777 001772 005277 005777 001401 104015 104000 PON,100. PON,100.,\X+1,\X+2,\Y 2832200002002 022 220200 0RRdR3RR R Rt 0t Rt dRRl ; PRGO ROUTINE 12 12 POT13 100. PONA X=X+1 ;ADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT Sl * * * * ;ttttt*t*tttttttt*ttttiittt*t**tittttttttfiittttittti*tttttttttt*ttttttttt ; TEST THAT READER BUFFER (PRB) IS CLEARED BY READER EnNABLE SRESET JRESET JSR X7 ,AREAD JGET CHARACTER TST aPRB ;TEST CONTENTS OF READER BUFFER. BEQ PONA TST aPRB INC BEQ ERROR SCOPE TSTA TSTAA aPRS .t ;GO GET ANOUTHER (HAR IF 0. sNOT 0. ENABLE READER s CHECK PRB ;BRANCH IF PRB IS RESET JERROR. PRB NOT RESET BY READER ENABLE. P00, 100. PC0,100..,\X+1,\X.2,\Y PA611 MACY11 30A(1052) 14=JUN-78 13-JUN-78 12:38 CZPAAC.P11 14:20 PAGE 21 SEQ 0042 232233722320 2222323 2222822082322 006060 006062 006064 006066 POT13: 000013 006130 000144 006074 000013 222 0233230232223 2232222282020 2000RiRRaRdd ] 13 ; PRGO ROUTINE 13 * POOA1 ;SCOPE ENTRY POINT * POT14 100. ;ADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT X=X+ * * :tttttlttttt*tttt\htt!titttttt**Qfi*tfifitttt't*ttitt*'tQtfi*tttt*t'ttt'ttttt ;TEST THAT READER [S ABLE TO INTERRUPT. IF INTERRUPT IS SERVICED, IT WILL 006070 V06072 006074 006102 006110 006114 006122 006124 00€126 006130 006130 006130 006132 006134 006136 JHAVE OCCURRED AT gggng 104013 006126 012737 042777 000000 000100 003714 000100 177776 173070 POOA: 8IS 173056 104015 104000 MOV BIC JSR NOP POO8: CORRECT VECTOR. ;SET UP READER INTERRUPT VECTOR #PRTYO ,PSW #B176,aPRS X7 ,AREAD #B1T76,3PRS 006144 006152 006156 006162 006170 006172 006176 006200 006202 ;ENABLE READER INTERRUPT. :NO OP EXROR SCOPE TSTA TSTAA ;ERROR. READER FAILED TO INTERRUPT. . SCOPE POP,100. POP,100. ,\X+1,\X+2,\Y 5232238222323 322332223232323232232338 POT14: 000014 006204 000144 006144 000014 104013 006200 013737 005077 004737 052777 000240 005077 104000 104015 8233382233322 232030228003028000800 002 R0 R R 14 POT15 100. POPA1 ; PRGO ROUTINE 14 ;ADDRESS OF NEXT ROUTINE * * * * ;TEST ITERATION COUNT ;SCOPE ENTRY POINT X=X+ :*ttttt*ti&**tttttfittttttttttttttttttttQ*ttittfitttfittt'ttfitt*tttttttttitt sTEST THAT READER DOES NOT 006140 006142 ;SET PROCESSOR PRIORITY TO O ;DISABLE READER INTERRUPT. ;GO READ CHARACTER. INTERRUPT WITH PROCESSOR AT SAME PRIORITY ;LEVEL AS READER. gsggRV 001212 173022 003714 000100 177776 POPA: MOV POPE: NOP CLR SCOPE ERROR 173010 173002 104000 CLR JSR BI1S SCOPE TSTA TSTAA 006204 ;SET UP READER INTERRUPT VECTF RDRLVL ,PSW ;SET PROCESSOR PRIORITY SAME AS READER PRIORITY. #B1TE,aPRS JENABLE READER INTERRUPT. aPRS %7 ,AREAD aPRS ;DISABLE READER IMTERRUPT. ;GO READ A CHARAC'ER. ;OK IF NO INTERRUPI OCCURS. ;DISABLE READER INTERRUPT. : SCOPE ;ERROR. READER ERRONEOUSLY INTERRUPTED ;WITH PROCESSOR AT SAME PRIORITY LEVEL AS ;THE READER, OR THE READER IS AT HIGHER JPRIORITY LEVEL THAN SPECIFIED AT RDRLVL. P0Q,100. P0Q,100.,\X+1,\X+2,\Y ;ttttttttttttttttttt*tttt'tttti'tti*tittfit*ttt*tifitttttitttttttttfittttttt 006204 006210 006212 006214 006216 006220 POT15: 000015 006262 000144 006220 000015 ; PRGO ROUTINE 15 :ADDRESS OF NEXT ROUTINE ;TEST ITERATION COUNT :SCOPE ENTRY POINT 100. POQA1 X=X+ AR R AR RN RN AR AR ;TEST THAT READER :THAN READER'S 104013 006260 013737 15 POT16 AR R R R RRAR 001212 177776 POQA: MOV RDRLVL ,PSW * * CRRRANRA R AN RN AAR RN INTERRUPTS WITH PROCESSOR AT PRIORITY 1 SéRgRV POQ AR AN RRRAARRER * * AR RN RN LEVEL LOWER ;SET UP READER INTERRUPT VECTOR ;SET PROCESSOR PRIORITY ONE LEVEL LOWER PA611 MACY11 CZPAAC.P11 30A(1052) 14-JUN-78 13-JUN~78 12:38 14: 20 PAGE 22 sSu8 BIS #B1T76,3PRS 006262 006264 006266 006270 000016 004354 000144 006272 000016 POT16: 104013 PORA : 006322 006324 006326 006330 006336 006342 006344 006346 006350 006352 006354 006354 006354 006356 006360 006362 006364 006370 006374 006400 006412 006420 006422 006424 ;G0 READ A (CHARAC(TER. 172724 104000 006310 006314 %7 ,AREAD #BIT6,aPRS 006260 006262 006262 006272 006274 006276 006304 . THAN READER PRIORITY BIC 162737 042777 004737 052777 000240 104015 #40,PSW 177776 172736 006226 006234 006242 006246 006254 006256 000040 000100 003714 000700 SEQ 0043 JSR NOP ERROR POQB: SCOPE TSTA TSTAA :DISABLE READER INTERRUPT JENABLE READER INTERRUPT . NOP JREADER FAILED TO INTERRUPT WITH ;PROCESSOR PRIORITY ONE LEVEL LOWER THAN THEREFORE, READER PRIORITY MUST BE sJREADER. ;LOWER THAN SPECIFIED AT RDRLVL POR,100. POR,100.,\X+1,\X+2,\Y ;ttt*tttttfittt**t*ttttttttt'ttAttfittt*titiitt*ttitttttttttfitttttttttttt'. 006330 012737 005077 004737 052777 000240 104015 104000 012777 012716 000002 000240 16 ; PRGO ROUTINE 16 * JTEST ITERATION COUNT b POT17 ;ADDRESS OF NEXT ROUTINE PORA1 :SCOPE ENTRY POINT 100. * * X=X+ t*itttt**tikttttittti*ttt'Q*ttfifittfifififitt**fittt*ttfittfifitittitiiti*t'ttttt STEST THAT READER DOES NOT REINTERRUPT AFTER RT] WHEN DONE BIT IS NOT CLEARED 000000 172670 003714 000100 gsggRV MOV 177776 CLR JSR Bég 172656 N ;SET READER INTERRUPT VECTOR #PRTYO,PsW aPRS %7 ,AREAD #B1T6,aPRS ERROR 006350 006344 172652 PORC: PORD: 104000 104015 104000 PORE: SCOPE MOV MOV RTI TSTA TSTAA ;DISABLE READER INTERRUPT. .GO READ A (HARACTER. ;ENABLE READER INTERRUPT JERROR 1. #PORE ,@RDRVTR #PORD ,a%6 NOP SCOPE ERROR SCOPE ;SET PROCESSOR TO PRIORITY O : SCOPE ;CHANGE READER FAILED TO INTERRUPT INTERRUPT VECTOR TO PORE JRETURN FROM INTERRUPT JERROR 2. READER REINTERRUPTED AFTER JRTI WITH DONE BIT LEFT ON P0S,1000. P0S,1000.,\X+1,\X+2,\Y :tti*ti*fitt*ttttttttttltttt*tttittt.ttttfitttitfififittlttttttttittt*tttttttt 000017 006424 001750 006370 000017 POT17: 104015 104000 : PRGO ROUTINE 17 sADDRESS OF NEXi ROUTINE sTEST ITERATION COUNT ;SCOPE ENTRY POINT X=X+ * * * * ;ttttttttttttttttttttttttttttt*t*t'it*tittttitfitttttttttittttttttt'tiitfit JTEST THAT READER INTERRUPTS IMMEDIATELY UPON LOWERING CP PRIORITY TO O. gégng ;SET READER INTERRUPT VECTOR TO 104013 006422 005077 004737 052777 005037 012737 17 POT20 1000. POSA1 172604 003714 000100 177776 000340 POSA: 172572 177776 (LR aPRS 8IS CLR #B81T6,aPRS PSW JSR MOV ERROR POSB: SCOPE TSTA %7 ,AREAD HPRTY7 ,PSW ;DISABLE PTRI. JREAD A CHARACTER. ;ENABLE PTRI ;LOWER PRIORITY TO 0. ;RAISE PRIORITY BACK TO 7. ;ERROR. READER FAILED TO INTERRUPT [MMEDIATELY JAFTER LOWERING PRIORITY 10 O POT,10000. s INTERRUPTS TO HERE IF SUCCESSFUL. PA611 MACY11 CZPAAC.P11 30A(1052) 14-JUN-78 13-JUN-78 12:38 14:20 TSTAA 006424 006424 006426 006430 006432 PAGE 23 SEQ 0044 POT,70000.,\X+1,\X+2,\Y 2233322322323 2323332 POT20: 000020 006452 023420 006440 000020 006434 006440 006444 006450 006452 006452 004737 004737 004737 006452 006454 006456 006460 000021 006510 000764 006474 000021 104000 2322202222323 2332 2282322323223 23222222202283R0S2dsRtRRtdRE ] 20 ; PRGO ROUTINE 20 * 10000. POTA1 sTEST ITERATION COUNT ;SCOPE ENTRY POINT * * POT21 ;ADDRESS OF NEXT POUTINE X=X+ * :ttttlttttti*ltttttitttt"titttitttfit!ttt'i*tttfitt.'itttti‘tttttttttiiitt ;READ AND CHECK 10000 CHARACTERS OF SPECIAL BINARY COUNT PATTERN. FULL SPEED. JSR %7 .BSYNC ;SYNC READER; SET ERROR COUNTER. 004352 004064 004274 POTA: JSR JSR SCOPE TSTA TSTAA %7 .BREAD ;G0 CHECK CHARACTER READ. :SCOPE POU,500. POU,500. ,\X+1,\X+2,\Y 2232222282223 23232222323233223382%88 POT21: ;GO READ CHARACTER X7 ,BCHECK 2082322232232 2222228280 R0 R0ttt Al d 21 ; PRGO ROUTINE 21 ' 500. JTEST ITERATION COUNT * POT22 ;ADDRESS OF NEXT ROUTINE POUA1 ;SCOPE ENTRY POINT * * X=X+ RN AR AR RN RN RN RN AN RN RANRARRNA AR RN AR NN R RN RN R RANRNRR JREAD AND CHECK 500 CHARACTERS OF SPECIAL BINARY COUNT PATTERN. 006462 006470 006474 006476 006502 006506 006510 006510 177770 012737 004737 006352 104012 004737 004064 004737 0046274 004242 JRANDOM STALL BETWEEN CHARACTERS MOV #177770,STLMSK STALL JSR JSR SCOPE %7 ,BREAD %7 .BCHECK JSR POUA: 104000 TSTA TSTAA X7 .,BSYNC (0 TO 7 MSECS). ;SYNC READER; SET ERROR COUNTER JRANDOM STALL (0 TO 7 MSECS) ;GO READ CHARACTER ;GO CHECK CHARACTER READ :SCOPE POV,1000. POV,1000.,\X+1,\X+2,\Y :tttittfiltttttttttttt*tttt*tttt*tttttttti**'ttfitfifitfititttttttlttttttttitfi 006510 006512 006514 006516 006520 006526 006532 006540 006542 006546 006552 006556 006560 006562 006562 POT22: 000022 006562 001750 006532 000022 012737 004737 012737 104012 004737 004737 005337 001371 22 : 1000. POVA1 sJTEST ITERATION COUNT ;SCOPE ENTRY POINT POTZ23 PRGO ROUTINE 22 JADDRESS OF NEXT ROUTINE * * * * X=X+ IS 177740 004352 000003 004064 004274 004272 004242 004272 2S22220222820223 00002280 22 0002208000t dRRtRRdRRRRRRRll il *READ 1000 GROUPS OF 3 CHARS EACH. STALL (0 TO 31 MSECS) BEFORE EACH GROUP. POVA: POVB: 104000 MOV JSR MOV STALL JSR JSR DEC BNE SCOPE TSTA TSTAA #177740,STLMSK %7 ,BSYNC #3 ,RNCNT %7 .BREAD X7 ,BCHECK RNCNT POVB ;LIMIT STALLS TO 31 MSECS. ;SYNC READER. SET ERROR COUNTER ;SET CHAR COUNT TO 3. JRANDOM STALL (0 TO 31 MSECS). ;GO READ CHARACTER. ;GO CHECK CHARACTER READ. ;3 CHARS READ? ;BR IF NOT 3 CHARS YET. : SCOPE POX,1000. POX,1000.,\X+1,\X+2,\Y :ittfi'ittfifitttttttttttti'tttttiiitttt‘ttt"fifittt't'tttttfittttttttttttttfit 006562 006564 006566 006570 000023 006640 001750 006612 POT23: 23 ; 1000. POXA sTEST ITERATION COUNT ;SCOPE ENTRY POINT POT24 PRGO ROUTINE 23 ;ADDRESS OF NEXT ROUTINE * * . « PA611 MACY11 CZPAAC.P1T 30A(1052) 14-JUN-78 13-JUN-78 12:38 14:20 000023 006572 006600 006606 006612 006616 006620 006624 006630 006634 006636 006640 006640 006642 006644 006646 012737 012737 SEQ 0045 X=X+1 :ttttt*ttt'tt'tittttlt‘i'it'tttttfitQtttttittitttttt'i*fitttt'tttttfittt'tlt 177740 177760 004737 004737 004352 004244 004737 004737 005337 001371 004064 004274 004272 104012 PAGE 24 004242 004270 ;READ AND CHECK 1000 CHARACTER GROUPS OF RANDOM LENGTH (1 JRANDOM STALL (0O TO 31 MSECS) BETWEEN GROUPS. MOV MOV POXA: PCxB: 104000 TO 15). #177740,STLMSK #177760,RCMSK ;LIMIT STALLS TO 31 MSECS. ;LIMIT MAY CHAR COUNT TO 15 CHARS. JSR JSR DEC BNE %7 .BREAD X7 ,BCHECK RNCNT POXB ;GO READ CHARACTER. ;GO CHECK CHARACTER. ;ALL CHARS READ? JBRANCH IF NOT. TSTAA POY,1000.,\X+1,LST,\Y JSR JSR %7 .BSYNC %7 ,GRCNT STALL SCOPE ;SYNC READER. SET ERROR COUNTER. ;GENERATE RANDOM CHAR COUNT. . SCOPE ;tttttfitfifitttfittttt.*ttt'i"ttt*t*tit**fifitti!tt'ttiittttt*itttt*ttttttttt 000024 POT24: 177777 001750 006670 000024 AR 24 POTLST 1000. POYA X=X+1 AR AR R ; PRGO ROUTINE 24 * sADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT AR AN RN R * * * E RN RN RA RN RAN AR RN R R RAN RN RN RN RN AR ARNRR RS JREAD AND CHECK 1000 CHARACTER GROUPS OF SPECIAL BINARY COUNT PATTERN. ;RANDOM LENGTH 006650 006656 006664 006670 012737 012737 004737 004737 177740 177700 004352 004244 006676 006702 006706 006712 006714 004737 004737 005337 001371 104000 004064 004274 004272 006674 104012 006242 004270 POYA: POYB: 000001 012737 104010 012151 004737 000137 MOV MOV JSR JSR #177740,STLMSK #177700.RCMSK X7 ,BSYNC %7 ,GRCNT JSR JSR DEC BNE SCOPE %7.BREAD X7 ,BCHECK RNCNT POYR STALL ;SYNC READER; SET ERROR COUNTER. . GENERATE RANDOM (CHARACTER COUNT. RANDOM STALL (0 TO 31MSECS) GO READ CHARATER ;GO CHECK CHARACTER READ *DECREMENT RANDOM CHAR COUNT GO READ AGAIN IF COUNT NOT 0. : SCOPE :PRG1 - PUNCH TESTS 177777 006716 006724 006726 006730 006734 006740 006740 ;GROUPS (BETWEEN 1 AND 77). RANDOM STALL BETWEEN GROUPS (0 TO 31 MSECS). x==1 006740 001256 PRG1: 004622 001700 Y=1 MOV TYPE TITL JSR M TSTA TSTAA #P1T0 ,KSTART ;ADDR OF 1ST ROUTINE TO KSTART ‘TYPE TITLE. PC,PCHSEL :SELECT PUNCH. SRSET GO GET STARTED. P1A.1000. P1A.1000.,\X+1,\X+2,\Y ;lIt"tItttttttt*ttttttQ*tttttttiiitittitit!"fifit'fi'fit’tttfitttfitttttttttfi 006740 006742 000000 006770 006746 006756 P170: 006744 001750 0 P1T1 : PRG1 ROUTINE 0 :ADDRESS OF NEXT ROUTINE . ) P1AA *SCOPE ENTRY POINT . 1000. 000000 X=X+1 AR AR 006750 006756 006762 012737 005777 104000 TEST ITERATION COUNT 006764 172222 000004 RN AR RN RN AR AR TR AR R AR R AN AN RN RN RN RN AN R A RN AN KRR . R AR NN AN R JTEST ABILITY TO REFERENCE THE PUNCH STATUS WORD (PPS) P1AA: MOV TST SCOPE #P1AB ,MACHER aPPS JREFERENCE PUNCH STATUS WORD 2 SCOPE RN ANS PA611 MACY11 CZPAAC.P11 30A(1052) 14~JUN-78 13-JUN=-78 12:38 14:20 PAGE 25 006764 006766 006770 006770 104015 104000 P1AB: 006770 00000 P1TS: 006772 006774 006776 007000 007006 007012 007014 007016 007020 L 007020 001759 007006 000001 012737 005777 104000 104015 104000 007024 001750 007026 007014 172174 000004 007044 007046 007050 001002 104015 104000 007052 007060 007066 007070 007072 007074 007074 007074 007076 007100 007102 007104 007112 007114 007122 007124 007126 007130 007130 P1BA: P1TZ: 032777 042777 032777 001401 104015 104000 P18,1000. TSTAA P1B,1000. ,\X+1,\X+2,\Y T L MOV TST SCOPE ERROR SCOPE TSTA TSTAA T AR 000100 000100 000100 000100 172146 172140 172124 172116 PI1(B: 000003 007130 000144 007104 000003 #P1BB ,MACHER aPPB I T 172072 000100 172062 L T RN AN AR (BIT 6) P1CB ;JBRANCH [F BIT SET ;ERROR. FAILED TO SET ID BIT :PPS T * AN IN PPS BNE ERROR SCOPE 3 P1T4 100. P1DA X=xX+1 T * AR RN KRR AR AR RN RN RN RN RN RN R AR ;SET I BIT IN PPS (BIT 6) sCHECK 1D BIT IN PPS (BIT 6) IN ;CLEAR ID BIT IN PPS ;CHECK ID BIT IN PPS JBRANCH IF BIT IS CLEAR JERROR. ID BIT IN PPS FAILED TO CLEAR P1D,100. P1D,100.,\X+1,\X+2,\Y AR NN RA R R AR R * HBIT6,aPPS .4 E JTEST ITERATIUN COUNT BIS #81T76,aPPS H#BIT6,aPPS Y * ;SCOPE ENTRY POINT #B81T76,aPPS R ; PRG1 ROUTINE 2 P1CA X=X+1 AR AR AR AT A ;SET UP MACHINE ERROR TRAP, JREFERENCE PUNCH BUFFER. 2 SCOPE ;TRAPPED WHEN REFERENCING ;JPUNCH BUFFER (PPB) P1C,1000. P1(,1000.,\X+1,\X+2,\Y AR R AR AR * * * (PPB) ;ADDRESS OF NEXT ROUTINE BEQ ERROR SCOPE TSTA TSTAA P1T3: 000100 THE PUNCH BUFFER P1T3 BIC BIT * e 2 BIT LT sADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT JTEST ABILITY TO SET AND CLEAR ID BIT PI1CA: LR ; PRG1 ROUTINE 1 P1T2 1000. P1BA X=X¢1 IR AR AR AR 052777 104001 032777 001401 104015 104000 T 1 1000. 007030 000002 052777 JERROR. TRAPPED WHEN REFERENCING PUNCH ;STATUS WORD (PPS). JTEST ABILITY TO REFERENCE P1RB: 007074 007030 007036 L P 000002 007022 ERROR SCOPE TSTA R 007020 007020 SEQ 0046 AN RA AR RN RN R AN AR RN AR AN RN AR AR AR AR RN KRR RN RN ; PRG1 ROUTINE 3 ;ADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT * * * * Ty T R e TEST ABILITY TO CLEAR ID BIT (6) IN PPS PIDA: BIS SRESET BIT BEQ ERROR SCOPE TSTA TSTAA #B1T6,aPPS #B1T6,aPPS R4 ;JSET ID BIT IN PPS. JRESET. JTEST ID BIT IN PPS. JBRANCH IF ID BIT IS CLEAR JERROR. RESET INSTRUCTION (AILED TO ;CLEAR ID BIT (BIT 6) IN PPS. P1E,1000. P1E,1000.,\X+1,\X+2,\Y "tttttt'tttttt!ttt.fittttttifi'ttfiitttttttti'fitlitt!fitit'fit'.tlttitt"'t'tt PA611 MACY11 CZPAAC.P11 30A(1052) 14=-JUN-78 13-JUN-78 12:38 007130 007132 007134 007136 007140 007144 007146 007150 007152 007152 14:20 000004 007152 001750 007140 000004 105777 100401 PAGE 26 PIT4: 172040 BM] ERROR SCOPE TSTA 007160 007162 000005 104001 007164 004737 007206 104000 007210 007212 007214 007216 * " * * .+ *BRANCH IF READY BIT SET *ERROR. RESET FAILED TO SET READY BIT, OR FAILED TO READ READY BIT. P1F,100. P1F.100.,\X+1,\X+2,\Y :t'tQfittttt.itfili.ttfikt"tttttt'tfititt.ififititfittttttifiitttfitttttttttttti' PITS: 007156 000144 007210 007210 . PRG1 ROUTINE & JADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT ;TEST THAT READY BIT (BIT 7) IS SET FOLLOWING A RESET INSTRUCTION, AND : THAT THE READY BIT CAN BE READ RELJABLY. PIEA: TSTB @PPS :TEST PP$ TSTAA 000005 007210 007170 007176 007202 007204 & P1T5 1000. P1EA X=X+1 :ttttt.tit.tfit'tttttitttitttttt*tfiifitfltt*ttitttttttlttttttttfitittfittttttt 104015 104000 007152 007154 007162 SEQ 0047 112777 105777 100001 104015 S P1T6 : PRG1 ROUTINE S :ADDRESS OF NEXT ROUTINE . . P1FA X=X+1 *SCOPE ENTRY POINT . 100. TEST ITERATION COUNT . ;ttt*'ttttfitttitt*ttttttti'tt*t*fittttttkttktiitttitttttttttt*ttttt'tttit* 004540 000000 172002 s TEST THAT READY BIT P1FA: SRESET JSR 172010 (BIT 7) OF PPS IS RESET BY LOADING PUNCH BUFFER JRESET %7.,CPRDY s CHECK FOR PUNCH READY MovBe TSTB BPL ERROR #0,aPPB aPPS .+4 TSTA TSTAA P16G,100. P1G,100.,\X+1,\X+2,\Y SCOPE (PPB) JLOAD O INTO PUNCH BUFFER (PPB) sTEST PPS ;BRANCH IF READY BIT CLEAR ;ERROR. LOADING PUNCH BUFFER (PPB) JFAILED TO RESET READY BIT IN PPS :tttttfitttttfitttt*tttktttttttttttttfitttfiit*ttfifit*tittttttttfit'ttittittitt 000006 007252 000144 007220 000006 P1T6: 007220 104001 P1GA: 007226 007232 007234 007240 007244 007246 007250 007252 007252 013700 005200 112710 105777 100401 104015 104000 007252 007254 007256 007260 000007 007320 001750 007266 000007 6 P1T7 100. P1GA X=X+1 ; PRG1 ROUTINE 6 ;ADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT :SCOPE ENTRY POINT * * * . ;ttfi't*ittfitttQtt*tttlttttttttfitttttfiit*ttttttt*ttttfittittttttttttt'itttt . TEST 007222 004737 004540 001206 THAT READY BIT SRESET JSR MOV INC MOVB TSTB BM] ERROR SCOPE TSTA TSTAA 000000 171740 (BIT 7) %7.,CPRDY PPB, %0 %0 #0,3%0 aPPS .+4 IS NOT RESET BY BYTE LOADING PP8+1. ;RESET *CHECK FOR PUNCH READY. :LOAD PPB+1 :TEST PPS :BRANCH IF READY BIT NOT RESET. ERROR. LOADING PPB+1 CLEARED READY BIT. : SCOPE P1H,1000. P1H,1000. ,\X+1,\X+2,\Y :ittttt.t*ttttttfitttfi**tt't"tififittt*ttfiiti'ttttt'ittttiiQtilfittttttttttt P1T7: 7 P1T10 1000. PTHA X=X+1 ; PRG1 ROUTINE 7 *ADDRESS OF NEXT ROUTINE TEST ITERATION COUNT :SCOPE ENTRY POINT . * ) . PAG11 MACY11 CZPAAC.P11 30A(1052) 14-JUN-78 13-JUN-78 12:38 14:20 PAGE 27 SEQ 0048 :tfi'.ittttttttt**itttttfiit*iittttfiittfitfifittittttttttttt*ttttttttttttttttt JTEST THAT PUNCH (READY BIT) 007262 007264 007266 007272 007276 007304 007312 007314 104014 007316 005037 004737 042777 052777 000240 104015 007316 007320 007320 104000 007320 000010 007322 177776 004540 000100 000100 PIHA: 171700 171672 PIHB: 007330 007332 007334 007340 007344 007352 007360 007362 007364 007366 007374 007400 007402 007404 007406 007410 007412 007412 007412 007414 007416 007420 STPCHV P1HB CLR JSR BIC BIS NOP ERROR SCOPE TSTA TSTAA IF THE INTERRUPT IS JSET UP PUNCH INTERRUPT VECTOR. PSW %7,CPRDY #BIT6,aPPs #BIT6.aPPS :SET PRTY T0 0. CHECK FOR PUNCH READY. *DISABLE PUNCH INTERRUPT ENABLE PUNCH INTERRUPT ;ERROR. FAILURE TO INTERRUPT WITH *PUNCH READY BIT SET. *INTERRUPT VECTOR POINTS HERE. P11,1000. P11.1000.,\X+1,\X+2,\Y ;t*ittttt'ifit"ttttt*tt'*tttt*fifiitktttttttfiit.fit*tittt***t*fit***ttttttttfi P1T10: 007412 007324 001750 007326 IS ABLE TO INTERRUPT. ;SERVICED, IT WILL HAVE OCCURRED AT CORRECT VECTOR. 007330 000010 104014 007366 005037 : PRG1 ROUTINE 10 . 1000. :TEST ITERATION COUNT » ;ADDRESS OF NEXT ROUTINE P11A X=X+1 :SCOPE ENTRY POINT . STEST THAT PUNCH DOES NOT REINTERRUPT AFTER RT] WHEN READY BIT IS NOT RESET. P1IA: 177776 004540 000100 000100 012716 000002 000240 104000 104015 104000 007402 007406 STPCHV P1IB CLR 171632 171624 171620 P1IB: P1IC: P1ID: JSR BIC BIS NOP ERROR SCOPE MOV MOV RTI NOP SCOPE ERROR SCOPE TSTA TSTAA JSET UP PUNCH INTERRUPT VECTOR PSW 27 .CPRDY #B1T6,aPPS #B1T6,3PPS #P11D,3aPCHVIR #P11C,a%6 :SET PRTY TO 0. ;CHECK FOR PUNCH READY. ;DISABLE PUNCH INTERRUPT JENABLE PUNCH INTERRUPT ;ERROR. PUNCH FAILED TO INTERRUPT. : SCOPE :CHANGE INTERRUPT VECTOR TO P1ID ; CHANGE INTFRRUPT RETURN ADDRESS. JRETURN rROM INTERRUPT. :ERRORZ. PUNCH REINTERRUPTED AFTER RTI WITH JREADY BIT LEFT ON. POP THE STOCK TWICE P1J,1000. P1J,1000.,\X+1,\X+2,\Y ;ttttt*ttttttttttttttttttttttttittt*ttttttttttttttttttititttt'ttttttttti' 000011 007466 001750 007426 000011 PIT1T: 11 P1T12 1000. P1JA X=X+1 S22 3282823222220 ; PRG1 ROUTINE 11 ;ADDRESS OF NEXT ROUTINE ;TEST ITERATION COUNT ;SCOPE ENTRY POINT 22322 2222802002000 222200 RRR022f 0 104014 007462 013737 005077 004737 052777 00'216 171544 0046540 000100 177776 171532 sLEVEL AS THF PUNCH. STPCHV P1JB P1JA: MOV PCHLVL ,PSW CLR aPPS JSR %7,CPRDY BIS #BIT6,aPPS . * x x 000t dRiRRtRRRRRRRRRRRR] STEST THAT THE PUNCH DOES NOT INTERRUPT WITH PROCESSOR AT SAME PRIORITY 007422 007424 007426 007434 007440 007444 * 22222323233332322232223322223232223332322223 2322222000828 282R2 R0 R0080RR0F¢SR 8 004737 042777 052777 000240 104015 104000 012777 19 PIT11 sSET UP PUNCH INTERRUPT VECTOR. ;SET PROCESSOR PRIORITY SAME AS PUNCH. ;DISABLE PUNCH INTERRUPT, JCHECK FOR PUNCH READY. ;ENABLE PUNCH INTERRUPT. PAG11 MACY11 CIPAAC.P11 30A(1052) 14-JUN-78 13-JUN-78 12:38 007452 007454 007460 007462 000240 005077 007464 007466 007466 104000 007466 007470 007472 007474 000012 007544 001750 007502 000012 104000 106015 16:20 PAGE 28 NOP 171524 P1JB: CLR SCOPE ERRUR SCOPE TSTA TSTAA SEQ 0049 aPPS ;0K IF NO INTERRUPT OCCURS. ;DISABLE PUNCH INTERRUPT. ;s SCOPE JERROR. PUNCH ERRONEOUSLY INTERRUPTED ;WITH PROCESSOR AT SAME PRIORITY LEVEL ;AS THE PUNCH, OR THE PUNCH IS AT HIGHER JPRIORITY LEVEL THAN SPECIFIED AT PCHLVL. P1K,1000. P1K,1000.,\X+1,\X+2 \Y ;ttttttttttttttt*ttfi*tt'tiiittttttt*ttttfittttfitt*ttifittti*t*fitttitttttttt PIT12: 12 : PRG1 ROUTINE 12 * 1000. STEST ITERATION COUNT * P1T13 :ADDRESS OF NEXT ROUTINE * :SCOPE ENTRY POINT P1KA1 X=X+ :t*titt*'t*ttt*tttttfittttitttfittt'titt*fifit*t'ttt*fit*tt*'kttttit**tttttttt ;TEST THAT PUNCH INTERRUPTS WITH PROCESSOR AT PRIORITY 1 007476 007500 007502 007510 007516 007524 007530 007536 007540 ;THAN THE PUNCH PRIORITY, g{igHV 104014 007542 013737 162737 042777 004737 052777 000240 * 001216 000040 000100 004540 000100 177776 177776 P1KA: 171446 PCHLVL ,PSW #40,PSW ;SET PROCESSOR PRIORITY ONE LFVEL LOWER ;THAN PUNCH PRIORITY. JSR X7.CPRDY ;CHECK FOR PUNCH READY. Bég N #BI1T6,aPPS #BIT6,aPPS ERROR 104015 sSET UP PUNCH INTERRUPT VECTOR MOV SuB B8IC 171460 sDISABLE PUNCH INTERRUPT JENABLE PUNCH INTERRUPT. JPUNCH FAILED TO INTERRUPT WITH PROCESSOR JPRIORITY ONE LEVEL LOWER THAN PUNCH. ;THEREFORE, 007542 007544 007544 104000 P1kB: 007544 007546 007550 007552 000013 007616 001750 007560 000013 P1T13: LEVEL LOWER SCOPE TSTA TSTAA PUNCH PRIORITY MUST ;BE LOWER THAN SPECIFIED AT PCHLVL. JHERE P1L,1€00. P1L,1000.,\X+1,\X+2,\Y IF INTERRUPT OCCURS. :tttt'tttt*tttttttt‘tttitiitttttitfit*fi*tt'itfit*tttfiitttttttttttttttttttti 007554 007556 007560 007564 007572 007600 007604 007612 104014 007614 004737 042777 052777 005037 012737 104015 007614 007616 007616 104000 007616 007620 000014 007662 13 : PRG1 ROUTINE 13 P1T14 1000. P1LA1 JADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT X=X+ * * * * ;itttlttitttttttttttttttttttitttiitfitiifi*t**t*tfi*ifittttt*ttttttfittttttttt JTEST THAT PUNCH INTERRUPTS IMMEDIATELY UPON LOWERING CP PRIORITY TO O. g{PgHV 004540 000100 000100 177776 000340 171412 171404 P1LA: L JSR 8IC %7,CPRDY #BIT6,aPPS sCHECK FOR PUNCH READY. ;DISABLE PUNCH INTERRUPT CLR PSW ;LOWER PRTY 7O O. BIS MoV 177776 JSET UP PUNCH INTERRUPT VECTOR ERROR P1LB: SCOPE TSTA AR R P1T14: 14 P1T15 TSTAA #BI1T6,aPPS WPRTY?7 ,PSW JENABLE PUNCH INTERRUPT ;RAISE CP PRIORITY BACK TO 7. JERROR. PUNCH FAILED TO INTERRUPT IMMEDIATELY JAFTER CP PRIOCRITY WAS LOWERED TO O. JHERC P1M,5 PIM,5,\X+1,\X+2,\Y AR RN AR RN R RN AR RN IF AR RN INTERRUPT OCCURS. AN RN AR A RN E AR AN RN R AR RA RN E AR RN N ; PRG1 ROUTINE 14 sADDRESS OF NEXT ROUTINE * * PA611 MACY11 30A(1052) CZPAAC.P11 14-JUN-78 13-JUN-78 12:38 007622 007624 007626 007634 007640 007642 007644 007646 007652 007656 007660 007662 007662 007662 007664 007666 007670 007672 007700 007706 007712 007714 007716 007720 007724 007726 007732 007734 007736 007736 007736 007740 007742 007744 14:20 PAGE 29 000005 5 007626 000000 104026 104030 004737 005337 001372 104000 JTEST ITERATION COUNT PI1MA * ;SCOPE ENTRY POINT X=X+1 000014 012737 004537 SEQ 0050 * :tttttt**ttttt*fititttti'tt'tttQ*t**tt*ttttittt*t*tttittttttttttittttttttt 001000 010122 001330 :PUNCH SPECIAL BINARY COUNT PATTERN IN PUNCH MODE O (FULL SPEED) PIMA: PIMB: 004572 001330 MOV JSR #512. ,RCNT %5 ,PFRNT ;SET CHARACTER COUNT TO 512 ;GO PUNCH FRONT END AND MODE O 0 ;INDICATOR INBIN JINITIALIZE SPECIAL BINARY COUNT GE TBNP ;GET BINARY CHARACTER JSR %7 ,HSPCH ;G0 PUNCH THE CHARACTER DEC RCNT ;DECREMENT CHAR COUNT. BNE PIMB :BRANCH IF COUNT NOT YET O YET. SCOPE ; SCOPE TSTA PIN.S TSTAA PIN,S, \X+1,\X+2,\Y :ttt*t**ttttttttttt*ttttttttttttttttttttttttttttttttttttttitttttttttfittfit 000015 P1T15: 007736 000005 007700 000015 012737 012737 004537 000001 104026 104030 004737 104012 005337 001371 104000 15 ; PRG1 ROUTINE 15 P1T16 5 PINA X=X+1 ;ADDRESS OF NEXT ROUTINE ;TEST ITERATION COUNT ;SCOPE ENTRY POINT * * * * :tttttttttttttt**ittt*tt**ttttitttt**ttt*fi**ttfittifittttttt*tttttttttttttt 177720 001000 010122 004242 001330 ;JPUNCH SPECIAL BINARY COUNT PATTERN IN PUNCH MODE 1 (RANDOM STALLS AFTER ;PUNCHING EACH CHARACTER. MAXIMUM STALL 47 MILLISECONDS) MOV #177720,STLMSK ;SET STALL MASK FOR 57(8) MAX PINA: MOV #512. ,RCNT ;SET CHARACTER COUNT TO 512. PINB: 004572 001330 JSR 1 INBIN GETBNP JSR STALL DEC BNE SCOPE TSTA TSTAA X5,PFRNT ;GO PUNCH FRONT END, AND MODE 1 ; INDICATOR sINITIALIZE SPECIAL BINARY COUNT. ;GET BINARY CHARACTER. %7 ,HSPCH ;GO PUNCH THE CHARACTER. JRANDOM STALL. RCNT ;DECREMENT CHAR COUNT. PINB ;BRANCH IF COUNT NOT YET O. : SCOPE P10.5 P10,5,\X+1,\X+2,\Y ;tttitttttitttttt*ttt*fififitti*ti*fitt*ttt*tttt*ttttfittfittt*tttfittttttfitttit 000016 010034 000005 007762 000016 PIT16: 16 P1T17 5 P10A X=X+1 ; PRG1 ROUTINE 16 ;ADDRESS OF NEXT ROUTINE JTEST ITERATION COUNT ;SCOPE ENTRY POINT * * * * ;ittttttfititttfi*ttttt*itt"i*t!fitt*tfitt*tttttttttttttt*ttttttttittttttttt :PUNCH SPECIAL BINARY COUNT PATTERN IN PUNCH MODE 2. ; (RANDOM STALL BEFORE PUNCHING RANDOM LENGTH GROUP OF 007746 007754 007762 007770 007774 007776 010000 010004 012737 012737 012737 004537 000002 104026 004737 104012 1777.0 177760 001000 010122 004244 004242 004270 001330 CHARACTERS). JMAXIMUM STALL 47 MILLISECONDS, MAXIMUM GROUP LENGTH =15) P10A: P10B: MOV MOV MOV JSR 2 INBIN JSR STALL #177720,STLMSK #177760,RCMSK #512. ,RCNT X5,PFRNT ;SET STALL MASK FOR 57(8) MAX. ;SET CHAR GROUP MASK FOR 17(8) MAX). ;SET CHARACTER COUNT TO 512. ;GO PUNCH FRONT END AND MODE 2 . INDICATOR JINITIALIZE SPECIAL BINARY COUNT. X7 ,GRCNT s GENERATE RANDOM CHARACTER COUNT JRANDOM STALL. MACY11 CZPAAC.P11 010006 010010 010014 010020 010022 010026 010030 010032 010034 30A(1052) 14=-JUN-78 13-JUN-78 12:38 104030 004737 005337 001404 005337 001367 000763 14:20 PAGE 30 P10C: 004572 001330 GETBNP JSR DEC 004272 104000 P10D: 000017 PIT17: SCOPE SEQ 0051 %7 ,HSPCH ;GET BINARY (HARACTER. JPUNCH THE CHARACTER. P10D RNCNT P10C P108 ;BRANCH ;NOT 0. ;BRANCH sBRANCH RCNT ;DECREMENT (HAR COUNT : SCOPE IF COUNT IS 0. DECREMENT RANDOM (HAR COUNT. IF COUNT NOT YET 0. IF COUNT 0. PIP,1,\X#1,LST,\Y 010044 000017 17 71TLST ;. PRG1 ROUTINE 17 ;ADDRESS OF NEXT ROUTINE P1PA ;SCOPE ENTRY POINT JTEST X=X+1 SRR AN RAR A AR AAR AR AN AR RN AR AR » 177777 000001 ITERATION COUNT » 010034 010036 010040 010042 » :tttttittttfi*ttttttttttttttittttttt*t*tfitt*t'ttttttttttt*ttt*ttttttttittt » PA611 ARAAARRAANRA AR A ARARAAANRRRAR AR RRARR AR AR AN ;PUNCH SPECIAL BINARY COUNT PATTERN IN PUNCH MODE 3. JSTALL 10 SECONDS, PUNCH 32 CHARACTERS, UNTIL THE ENTIRE PATTERN IS 012737 004537 000003 001000 10122 001330 104030 Pi1PB: 000040 004737 005337 001404 005337 001367 000761 004572 001330 012701 005037 004737 005301 001374 012737 004737 012537 004737 012701 005037 004737 005301 001374 000205 000024 001332 004272 P1PC: 004272 104000 P1PD: INBIN DELAY 10000. MOV GETBNP JSR DEC BEQ DEC BNE BR SCOPE #512. ,RCNT X5,PFRNT 104010 ;GO PUNCH FRONT END AND MODE 3 < INDICATOR. s INITIALIZE SPECIAL BIN COUNT ;STALL 10 SECONDS #32. ,RNCNT X7 .,HSPCH ;SET GROUP COUNT TO 32. :GET BINARY CHARACTER ;PUNCH CHARACTER RCNT ;DECREMENT CHAR COUNT RNCNT P1PC P1PB ;DECREMENT GROUP COUNT ;BRANCH IF COUNT NOT YET O. JBRANCH IF COUNT 0. P1PD ;BRANCH IF COUNT IS O ;. SCOPE 001332 MOV #20..21 ;PUNCH 20 BLANK CHARACTERS MoV JSR 0} %7 ,HSPCH %1 .~6 #377 ,PCHOUT X7 ,HSP(H (5)+,PCHOUT ;PUNCH CHAR. ;DECREMENT R1 ;BRANCH IF NOT 20 CHARCTERS YET. ;PUNCH RUBOUT CHAR (SYNC CHAR). MoV #6, %1 RTS X7 ,HSPCH %1 ..6 x5 CLR JSR DEC BNE JSR CLR JSR DEC BNE PCHOUT X7 ,HSPCH PCHOUT ;PRGZ - PUNCH VERIFY PROGRAM 010206 ;SET CHARACTER COUNT TO 512. ;SUBROUTINE TO PUNCH FRONT END AND MODE CODE (USED BY PRG3). PFRNT: 004572 000377 004572 001332 004572 000004 001332 004572 MOV JSR 3 104026 104031 023420 012737 : COMPLETED. P1PA: ;CLEAR PCHOUT, ;MOVE MODE CODE TO PCHOUT ;PUNCH MODE CODE. JPUNCH & BLANK CHARACTERS. JEXIT ;THIS PROGRAM VERIFIES TAPE PRODUCED BY PRG1. JANY ERRORS FOUND ARE REPORTED. PRGZ: TYPE TITLE TYPE (000) PA611 MACY11 30A(1052) 14=JUN-78 13-JUN~-78 12:38 CZPAAC.PIT 010210 010212 010216 010220 010222 010224 010226 010230 010232 010240 010246 010252 010256 010260 010264 010266 010272 010274 010276 010302 010304 010306 010310 010312 010314 010320 010324 010326 010332 010334 010336 010344 010352 010360 010362 010364 010366 010370 010372 010374 010376 013514 004737 104011 013547 013243 0140461 177777 106024 012737 012737 004737 005737 001007 005337 001413 005337 001365 000403 005337 001356 14 :20 TITL2 JSR 005020 TYPES SEQ 0052 PC.,RDRSEL IM2 ITZS 000372 000012 004064 001334 001352 001354 ETOA: ET08: ETOC: 001354 001352 ETOD: 001352 ETOE: CHALT MOV MOV JSR TST BNE DEC BEQ DEC BNE BR DE¢ BNE ERRORN EMS -1 ETOF. 004064 001334 001352 000377 001350 001326 001326 001326 001334 ETOG: 104017 ;250 TO CTRA. (TOTAL CHAR COUNT). %7 ,BREAD ;READ CHAR ETOD JBRANCH IF NON-ZERO CHAR. ;0 CHAR. DECREMENT (CTRB JBRANCH IF 10 CONSFCUTIVE 0'S READ. ;NO. DECREMENT CTRA. ;BRANCH IF NOT YET 250 CHARS READ. ;250 CHARS READ. SYNE ERROR. ;DECREMENT (CTRA ;BRANCH IF NOT 250 CHARS READ YET. ;SYNC ERROR. 250 CHARS READ WITHOUT ;A SUCCESSFUL SYNC. CRBUF CTRB ETOF CTRA ETOC ETOE CTRA ETOB ETOA %7 ,BREAD ;GO TRY AGAIN. JREAD CHAR ETOG ;BRANCH IF NON-ZERO CHAR. ;DECREMENT CTRA BEQ ETOH MOV BI( CMP CRBUF CTRA ETOF ETOE #377 ,ERRT RDRMSK ,ERRT ERRT, CRBUF JBRANCH IF NOT 250 CHARS READ YET. ;250 CHARS READ. SYNC ERROR. ;COMPARE CHAR KEAD TO 377. :377.0K. ;ERROR TYPEOUT. ESB 4 OACNV CRBUF EWAS 4 EM4 -1 004064 001334 000003 ETOH: BR JSR cMP BLOS OACNV CRBUF FWAS 4 ERRORN 177777 JWAIT FOR USER. BR JSR TST BNE DEC BNE BR OACNV ERRT 001326 015262 000004 104017 #250.,CTRA #10.,CTRB ;LEADER ERROR. SHOULD BE 377. ERRORN 010436 010440 010442 JSELECT READER. IM6 104016 015220 177777 000747 004737 005737 001004 005337 001370 000763 012737 043737 023737 001414 PAGE 31 EMS ETOA %7 ,BREAD CRBUF ,43 ETOI ;START OVER ;READ CHAR. ;COMPARE CHAR READ TO 3. JBRANCH IF SAME OR LOWER. ;ERROR. CONVERT DATA READ TO ASCII. JSET UP FOR TYPEOUT. ;LEADER_ERROR. SHOULD BE BETWEEN ;0 AND 3. SR 14-JUN-78 MACY11 30A(1052) 13-JUN-78 12:38 CZPAAC.P11 PA611 010570 010572 010574 010600 010604 010606 010610 010612 010614 010616 010620 010622 010630 010634 010640 010642 010644 010646 010650 010652 010660 010666 010672 010674 010676 012737 004737 104027 004737 005337 001370 000641 023737 001413 104017 003212 015126 000004 104017 001334 015141 000004 104016 015103 003212 001352 001000 004064 PAGE ET0I: ET0U: 004064 010530 001352 001324 001352 003212 ETOK: ECHK: JSR GE TBNR JSR DEC BNE B8R CMP BEQ OACNV BINR ETOA CRBUF ,BINR E CHKA ;DONE. START OVER. ;COMPARE CHAR READ AGAINST EXPECTED (HAR. sBRANCH IF EQUAL. s CONVERT EXPECTED DATA TO ASCII. ;CONVERT DATA READ TO ASCII. 4 ERRORN EM -1 RTS ;ERROR. DATA ERROR. 174 JEXIT ;PRG3 - COMBINFD READER-PUNCH TEST JUSES SPECIAL BINARY COUNT PATTERN. 005020 004622 sTYPE TYPE TITL3 JSR JSR TYPES PC ,RDRSE! PC,PCHSEL TITLE. s SELECT READER sSELECT PUNCH. IM3 013243 1M6 IT23 CHALT INBIN 004242 MOV (LR CLR STRDRV WNZERO STPCHV PBIN GE TBNP 011130 000776 005777 MOV AWAS PRG3: 104400 ISR ;4 TO CTRA (CHAR (OUNT) ;CLEAR BINR. EXPECTED CHAR IS 0. %7 ,BREAD JREAD (HAR. %7 ,ECHK ;GO CHECK CHAR READ. CTRA ;DECREMENT CTRA ETOJ JBRANCH IF NOT 4 (HARS READ YET. :INITIALIZE SPECIAL BINARY COUNT. #512.,CTRA ;SET CHAR COUNT TO 512. %7 ,BREAD ;READ (HAR. ;CET BIN (HAR. %7 ,ECHK ;GO CHECK CHAR READ. (TRA ;DECREMENT CHAR COUNT ETOK ;BRANCH [F NOT 512 CHARS READ YET. BINR OACNYV CRBUF 104010 052777 005037 CLR JSR ;START OVER. ETOA #4,CTRA 4 ECHKA: 104014 010676 104030 013777 MOV SEQ 0053 ASB 177777 014041 177777 104024 104026 012737 005037 005037 104013 BR INBIN 000207 014505 004737 004737 104011 014551 32 DEC B8NE 010530 001352 YN 010540 010542 010544 010546 010550 010552 010554 010556 010560 010562 010564 010556 104026 000004 — b N} —_— N 010530 010536 000672 012737 005037 004737 004737 005337 001371 OO = 010444 010446 010454 010460 010464 010470 010474 010476 010500 010506 010512 010514 010520 010524 010526 16:20 003214 000100 177776 170302 170326 170316 MOV BIS CLR TRAP PBIN: BR TST SIS S INITIALIZE BINARY COUNTS. ;SET MAX. STALL DELAY. #177620,STLMSK PCHCONT RBUSY sCLEAR PUNCH COUNT ;CLEAR READER BUSY INDICATOR ;SET PTRI VECTOR. ;SET PTPI VECTOR. BINP,aPPB #BI1T6,aPPS PSW =2 aPPS ;GET BIN CHARACTER JPUNCH IT ENABLE PTPI JSET PRIORITY 0. sTRAP CALL TO CAUSE NOISE. ;TEST FOR ERROR. T S IR PAG11 MACY11 CZPAAC.P11 30A(1052) 010702 010704 010706 010710 010712 010714 010720 010722 010724 010726 010730 010734 010736 100004 104010 014707 104024 000771 105777 100403 104016 015451 177777 005237 104030 013777 010752 010754 010756 010762 010764 010772 103001 000002 105737 100406 052737 052777 010744 011000 011006 011070 011014 011016 011020 011024 011026 011032 011034 011040 011042 011044 023727 023727 101402 005077 104012 000002 005777 100003 004737 000772 105777 100403 104016 015421 011046 011050 177777 017737 011062 011064 011072 001015 0322777 001003 011102 011110 011114 011116 011122 011124 011126 011130 011134 011140 011142 011144 011152 011160 011162 011166 04737 00,077 500207 005277 000207 000000 000000 004737 005737 001001 000002 012777 012737 000402 004737 104027 011056 011074 14-JUN-78 13-JUN=77 12:38 005337 05,777 14:2) PAGE 33 170264 PBNA: 011124 PBNB : 003214 011124 170242 000144 CMP 011126 000200 000101 011124 011126 170200 000146 170170 PBNC: PBND: 170154 CREAD: 003772 170140 CRDA: 170126 001334 000100 170112 011124 000100 000200 170064 170102 011126 170056 011020 001324 011162 000003 011020 170036 001344 BPL TYPE SM3 CHALT BR TSTB BMI ERRORN EM11 =1 INC GETBNP MOV CRDAA: BHIS RTI TST8 BM] BIS BIS (MP 8LOS CLR STALL RTI TST BPL JSR BR TSTB 8MI ERRORN EM10 SEQ 0054 PBNA JBRANCH [F NO ERROR. ;TYPE PUNCH NOT READY ;MESSAGE. PBIN aPPS PBNB JRECHECK FOR ERROR. ;CHECK FOR DONE. ;BRANCH IF DONE SET. JERROR.FALSE PUNCH INTERRUPT. PCHCNT s INCREMENT PUNCH COUNT. :GET BINARY (HARACTER JENABLE PUNCH BINP,aPPB PCHCNT ,4100. R JNOT BUSY. PUNCH COUNT 100 YET? RBUSY PBNC #B1T7 ,RBUSY #101,aPRS JBRANCH IF VYES.. JNOT YET. EXIT INTERRUPT ;READER BUSY? ;BR IF VYES. ;SET READER BUSY JENABLE PTRI AND READER. PBND aPPS ;BR IF NOT. ;STOP PUNCH. PCHCNT ,#102. aPRS CRDA X7,TSM2 CREAD aPRS CRDAA JPUNCH COUNT 102? JEXIT INTERRUPT. ;CHECK FOR ERROR. ;BRANCH IF NO ERROR. ;ERROR.TYPE MESSAGE. ;TEST FOR DONE. ;BRANCH IF DONE SET. ;ERROR. FALSE READER INTERRUPT. -1 MOV @dPRB, CRBUF ;CHARACTER READ TO CRBUF BNE BIT 8NE CREADC #BIT6,aPPS CREADA ;BR IF NOT 0. ;NO. PTP] ENABLED? :BR IF YES. #B1T7 ,RBUSY aPRS X7 aPRS X7 ;YES. CLEAR READER BUSY. :DISABLE PTRI. JEXIT. cENABLE READER SEXIT. X7 ,CREAD CRBUF RU JREAD CHARACTER s CHECK CHARACTER JBRANCH [F NON-ZERO CHAR. ;ZERO. EXIT INTERRUPT. ;SET READER VECTOR TO READ BINARY JCOUNT. SET ERROR COUNTER TO 3. DEC BIS CREADA: BIC CLR RTS CREADC: INC RTS PCHCNT: OPEN RBUSY: OPEN WNZERO: JSR TST BNE RTI MOV MOV BR RBIN: JSR RBINA: GETBNR PCHCNT #B1T16,aPPS HRBIN,aRDRVTR #3,ERCTR RBINA %7.CREAD ;NO. ENABLE PTPI. JREAD CHARACTER. ;GET BINARY (HARA(TER PA611 14=-JUN-78 MACYT11 30A(1052) 13-JUN-78 12:38 CZPAAC.P11 011170 011176 023737 001001 000002 104017 003212 015126 000004 003212 146:20 PAGE 34 001334 CMP BNE RTI RBINB: 015141 000004 104016 015103 012777 012737 042737 000002 104010 013620 004737 104011 ; COMPARE AGAINST (HAR READ. JBRANCH IF NOT SAME. JSAME EXIT INTERRUPT. ; CONVERT EXPECTED CHAR TO ASCII OACNV BINR OACNV CRBUF AWAS ;CONVERT RECEIVED CHAR TO ASCII ERRORN EM1 JERROR MESSAGE. DATA ERROR. 4 001344 100000 011270 000004 001334 011126 167734 001344 011020 001334 001344 RBINC: RBIND: 000003 100000 MOV RT] JSR DEC BEQ RTI 004440 011162 -1 DEC BNE RTI BIS MOV MOV MOV 167664 001344 011126 JSR B8R MOV ERCTR RBINC #B1T15,RBUSY #RBIND ,aRDRVTR #4 ERCTR #CRBUF , %0 %7 ,CREAD CRBUF, (0) + ERCTR .+4 %7 ,SYNCA RBIN(C #RBIN,aRDRVTR #3,ERCTR ;3RD ERROR? JYES. sNO. EXIT INTERRUPT. sDISABLE STALLS. ;SET PTR VECTOR TO RBIND. ;JUSE ERCTR AS CHARACTER COUNTER. ;ADDR OF CRBUF TO ZC JEXIT INTERRUPT ;READ CHARACTER ;STORE CHARACTER STARTING AT (HR1 :3?2 CHARA(CTER? JEXIT INTERRUPT. NOT 3RD YET. ;GO SYNC THE READER. sNO SYNC. TRY AGAIN. ;SYNCED. SET READER VECTOR TO RBIN. ;SET ERROR COUNT TO 3. MOV 8IC #BIT15,RBUSY cENABLE STALLS. RTI JEXIT INTERRUPT. ;PRG4 - PUNCHES 2 CHARACTERS SET IN SR. ;TYPE TITLE. TYPE PRG4: TITL4 JSR TYPES 004622 013663 PC.PCHSEL ;SELECT PUNCH. SR,PCHOUT ;COMMON HALT. WAIT FOR USER. JPUNCH FIRST CHARACTER. A IM16 1?23 013314 014041 177777 177570 001332 177571 004572 001332 004572 005020 014041 RBINS A 001334 005337 001001 000002 052737 012777 012737 012700 000002 004737 013720 005337 001401 000002 004737 000751 BINR, CRBUF ASB 104017 177777 SEQ 0055 PRG4A: CHALT MOVB JSR MOVB %7 ,HSPCH SR+1,PCHOUT X7 ,HSPCH sPUNCH SECOND CHARACTER. JSR ;REPEAT. PRG4A BR ;PRGS - READS-CHECKS TAPE PUNCHED WITH CODES SET TYPE PRG5: ;TYPE TITLE. TITLS PC.RDRSEL JSR JSELECT READER. TYPES IMS IM6 IM23 IN SR PA6G1T MACY11 CZPAAC.P1 14=-JUN-78 13-JUN-78 12:38 011434 011436 011440 011446 011454 011460 011466 011472 011500 011506 011510 011516 011520 011524 011532 011536 011542 011544 011552 011554 011556 011560 011562 011564 011566 011570 011572 011574 011576 011600 011602 011606 011610 30A(1052) 177777 104024 113737 113737 004737 013737 004737 013737 023737 001041 023737 001062 005037 012737 004737 005137 001437 023737 001767 104017 001356 015126 000004 104017 001334 015141 000004 14: 20 PAGE 35 -1 177570 177571 004064 001356 001360 001334 001336 001336 001340 001356 001340 001360 004064 001334 001354 000003 004064 001354 001344 001334 001356 (HALT MOVB HTOA: HTOB: HTOC: 011612 011620 011622 011630 011632 011640 011642 011650 011674 011676 011700 011704 JSR MOV JSR MOV tmMpP BNE CMP BNE (LR MOV JSR COM 8EQ cMP BEQ OACNV CTRC SR+1,CTRD X7 ,BREAD F , CHR1 CRBU %7 ,BREAD CRBUF , (HR? CHR1,CTRC HTOE CHR2,CTRD ;COMMON HALT. WAIT FOR USER. ;STORE EXPECTED CHARACTERS. sIN CTRC AND CTRD. JMATCH CHARS ON TAPE AGAINST EXPECTED CHARS. JREAD CHAR INTO CHR1 ;READ CHAR 2 INTO CHR2 :(CHR1)=(CTRC)? JNO. :YES. (CHR2)=(CTRD)? HTOG CTR8 #3,ERCTR ;NO. MATCH ERROR. CTRB HTOF ;COMPLEMENT CHAR INDICATOR %7 ,BREAD CRBUF ,CTRC HTOC JYES. NEXT CHAR SHOULD = (CTRC) (CTRB-D) ;3 TO ERROR COUNTER. JREAD CHAR JBRANCH IF EXPECTED CHAR SHOULD = (CTRD) ;(CRBUF) = (CTR(O)? JYES. JNO. (CTRC) TO ASB IN ASCII FORM, A HTOD: OACNV CRBUF AWAS ;(CRBUF) ERRORN JERROR 1 CALL. TYPE DATA ERROR MESSAGE. 4 EM1 -1 001344 001336 001360 001340 001356 177777 001354 001334 001360 HTOE: HTOF: 011652 011654 011656 011660 011662 011664 011666 011670 011672 Movs SR,CTR( ASB 104016 015103 177777 SEQ 0056 DEC BEQ B8R cMP BNE CMP BNE MOV BR CMP BEQ OACNV CTRD ERCTR HT0A HTOC CHR1,CTRD HTOG CHR2,CTRC HT0G TO AWAS IN ASCII FORM. ;3 ERRORS? JYES. START ALL OVER. sNO. CONTINUE READING. ;(CHR1) = (CTRD)? ;NO. MATCH ERROR. JYES. (CHRZ) = (CTRC)? :NO. MATCH ERROR. HT0B CRBUF ,CTRD HTOC JYES. NEXT CHAR SHOULD = (CTRD) ;GO START READING. s (CRBUF) = (CTRD)? JYES. OK. CONTINUE READING. ;NO. (CTRD) TO ASB IN ASCII FORM, HTOD ;GO GENERATE ERROR MESSAGE. #-1,CTRB ASB A HTOG: 0005670 104010 JMATCH ERROR. UNABLE PRG6: 005020 TYPE TITLG JSR TYPE TO MAT(H UP ;2 CONSECUTIVE CHARACTERS FROM READER HTOA :TO CHARACTERS READ FROM SR. ;PRG6 - READ X CHARACTERS, STALL Y MILLISECONDS. 104010 013337 004737 BR ERRORN EM6 -1 BR sTYPE PC.RDRSEL TITLE AND JSELECT READER. INSTRUCTIONS. N \l\l\lg (o ¥ 2X, 8] 012034 012036 012040 012044 012046 012050 012052 012054 012056 012062 012066 012074 012076 012104 PAGE 36 005037 005037 113737 113737 011754 011760 177570 177571 ITA: NN 104024 003714 011760 1TR: I17TC: ITY: ITX: :PRG7. PRG?: 104010 013175 004737 104011 004622 104024 104026 104030 004737 000774 104010 014062 004737 104011 005037 005037 032737 001403 012737 062737 000407 004737 005337 001005 005237 013737 005737 100363 004537 014732 1TY 1TX SR,ITY SR+1,1TX JMOVE STALL COUNT TO ITy. :MOVE CHAR COUNT TO ITX. JSR DECR X7 ,AREAD 17X JFETCH CHARACTER. :DECREMENT CHAR COUNT, BEQ BNE DELAY OPEN BR OPEN I17C JBR IF COUNT 0. 178 ;BRANCH IF COUNT NOT 0. JREAD CHARS. STALL NOw. JSTALL COUNT IN MSECS. :REPEAT ITA PUNCH SPECIAL BINARY COUNT PATTERN TEST TYPE ;TYPE TITLE. TITL?7 JSR PC,PCHSEL ;SELECT PUNCH. TAPE Iq16 CHALT MOV 000024 001332 004572 PRGZA: PRG78B: 004572 CLR JSR DEC BNE INBIN GETBNP JSR B8R #20.,-(6) PCHOUT X7 ,HSPCH ax6 PRG7A JWAIT FOR USER. ;PUNCH 20 BLANK CHAR. LEADER ;INITIALIZE SPECIAL BINARY COUNT X7 ,HSPCH PRG/B :GET BINARY CHARACTER. ;PUNCH CHARACTER JREPEAT, ;PRG10 ~ READER SPEED PRINT LOOP PRG10: TYPE ;TYPE TITLE TITL1O JSR PC ,RDRSEL JSELECT READER. 005020 TYPES 014113 014302 177777 104024 CHALT CLR (LR MOVB MOVB TYPES 013314 177777 012746 005037 004737 005316 001374 SEQ 0057 M7 013371 —_— SN O O O O O SNNNNNNNNNNNNNY NN — —> — oonsrnNNO SOOI ONNO P NN o NNNN PuerunrGnerGonr s Gomr S Sur ur G unr GunrSurd b ok — = D ad — — -— ad loleolelel oJoliNeolololalolelololalolololols] 012000 012002 012006 012012 012016 012020 012022 012024 012026 012032 14:20 30A(1052) 14-JUN-78 13-JUN-78 12:38 - MACY11 [ 1] PA611 CZPAAC.P11 M0 IT?éA 001356 001354 040000 177570 000416 000036 001356 001356 KTA: 004064 001352 001354 001356 177570 012254 (LR (LR BIT BEQ KTRB: KTC: 001352 CHALT KTD: KTE: KTF: MOV ADD B8R JSR DEC BNE INC MOV IST BPL JSR SM& (TRC CTRB #BIT14,SR KTB #270.,CTRC #30.,CTRC KTD %7 .BREAD CTRA KTE CTRB CTRC,CTRA SR KTC %5, CPKPL JHALT. WAIT FOR USER. ;CLEAR WORK REGISTERS :DETERMINE WHETHER 30 OR ;300 SECOND TIMING IS DESIRED JSET UP FOR DESIRED TIME BASF. ;READ CHARACTER. ;DECREMENT (TRA :BRANCH IF CTRA NOT 0. ;CTRAQ.+1 TO CTRB, JRELOAD CTRA. ;TIME UP? JNO. ;GO TYPE QUT DEVICE SPEED. PA611 MACY11 CZPAAC.P11 30A(1052) 012154 000737 012156 012160 012162 012166 012170 012172 0121726 012176 012200 012204 104010 014454 004737 104011 013314 014302 177777 104024 005037 005037 012212 012216 012222 012210 012224 012230 012236 012242 012244 012250 012252 012254 012260 012262 012264 012266 012270 012272 012274 012276 012300 14=JUN-78 13-JUN-78 12:38 14:20 ;PRG11 PRG11: 004622 001354 001332 LTA: 004737 005337 001005 004572 001352 LTB: 012737 000074 000407 PAGE 37 005237 001354 005737 100363 004537 014754 000751 012537 104020 001354 014775 000003 104011 000000 014775 177777 000205 177570 012254 012272 001352 LITC: LTD: BR SEQ 0058 KTA=2 ~ PUNCH SPEED PRINT LOOP TYPE Titunm JSR TYPES IM16 IM24A =1 CHALT CLR CLR BR JSR DEC BNE INC MoV TST BPL LTE: JSR SMS BR (PKPL: MOV BDCNV CTRB ACPS 3 TYPES CPKPLA: OPEN ACPS -1 RTS PC,PCHSEL CTRB PCHOUT LTC X7 ,HSPCH CTRA LID CTRB #60.,CTRA SR LTB X5, CPKPL LTA=2 (5)+,CPKPLA 200 HALT. ;TYPE TITLE. JSELECT PUNCH. JHALT. WAIT FOR USER. ;CLEAR WORK AREAS. JPUNCH A O ;DECREMENT CTRA ;BRANCH IF CTRA NOT O s INCREMENT CTRB. ;MOVE 60 TO (TRA ;TIME UP? 2NO. ;GO TYPE OUT DEVICE SPEED. ;GO HALT AND READY UP FOR NEXT TIME. ;MOVE ADDR OF 1ST MESSAGE TO (CPKPLA. ;CONVERT (CTRB) TO DECIMAL ASCII. ;TYPE DEVICE SPEED. %5 - JEXIT. PAG11 14-JUN-78 MACY11 30A(1052) 13-JUN=-78 12:38 CZPAAC.PI 14:20 PAGE 38 SEQ 0059 :PA611 ADDITIONAL CODE TO CHECK PUNCH LOGIC AND READER LIGHTS MODIFIED: PROGRAMMER: MARCH 15, 1975 MIKE MITCHELL PROBLEM CORRECTED: PUNCH GETS HUNG WHEN RUNNING OUT OF TAPE THIS PREVENTS AND OPERATOR TURNS PUNCH OFF. THE PUNCH FROM FINISHING THE PUNCH CYCLE BY KEEPING READY LOw. *PROBLEM FIX: ADDITIONAL LOGIC ALLOWS PUNCH TO BE RE-INITED UNDER PROGRAM (ONTROL. :THIS CODE RUNS UNDER OPERATOR INTERVENTION. 012302 012304 177777 000000 : MONE Z2ERO: 177777 sBINARY ONE PATTERN ;ZERO PATTERN 0 :PROGRAM 12-~-HIGH SPEED PUNCH PROGRAMMABLE INIT TEST 012306 012310 012312 012316 012320 012322 012324 012326 015705 004737 104011 013314 014041 177777 104024 012330 012336 012342 012350 012354 012362 012366 042777 004737 113737 004737 112737 004737 000137 PRG12: 104010 004622 000006 012444 012302 012372 012304 012372 166646 PG12B: 001332 PG12A: 001332 012342 TYPE TITLIZ2 JSR TYPES PC,PCHSEL JTEXT “%XPRG12--PROGRAMMABLE JSELECT THE PUNCH IM16 1723 ;TEXT 'MAKE PUNCH READY'' CHALT JWAIT FOR OPERATOR. BIC JSR MOVB JSR movB JSR JMP INIT JTEXT "HIT CONTINUE'' #6 ,aPPS PC,TSTPUN MONE ,PCHOUT PC ,HSPCH1 ZERO,PCHOUT PC ,HSPCH1 PG12A ;DISABLE PUNCH INTERRUPT, ;CHECK FOR PUNCH READY. ;PUNCH BINARY 1 PATTERN. ;DO IT HERE. ;JPUNCH BINARY ZERO PATTERN. .LOOP "HIGH SPEED PUNCH ROUTINE HSPCH1: NOP 012372 000240 012374 012402 043737 013777 001346 001332 012410 012414 012416 012424 012432 004737 000000 052777 032737 001371 012476 000400 040000 001332 166576 166560 177570 sPUNCH THE CHARACTER 1%: ;DEBUG. BIC Mov PCHMSK , PCHOUT PCHOUT ,aPPB sLOAD PUNCH BUFFER. JSR PC,TIMER JIN A TIMEOUT LOOP. HALT BIS BIT BNE #400,aPPS #B81T14,SR 1% ;JWAIT FOR DONE s TIMED-OUT RETURN JRE=INIT PUNCH. :SCOPE LOOP ENABLED??? JYES,LOOP UNTIL SR14 O. TESTQ' PA611 MACY11 CZPAAC.P11 30A(1052) 14=-JUN-78 13-JUN-78 12:38 012434 012440 004737 000000 14:20 PAGE 39 012476 JSR PC, HALT SEQ 0060 TIMER :RE-CHECK THE DONE BIT. SFATAL ERROR: SRESET BY THE DONE BIT WAS NO INIT INSTRUCTION. :ELSE RETURN IS TO THE NEXT INSTRUCTION. 012442 000207 RTS PC SEXIT ;OUTPUT ERROR MESSAGE OF PUNCH NOT READY :IF ERROR BIT 15 SET OR BIT 7 NOT SET. 012444 012450 012452 012456 012460 012462 012464 012466 012470 012472 012474 005777 166534 105777 166526 100404 100001 TSTPUN: TST BM] TSTB BPL 000207 HSPCH2: 104011 014707 013314 RTS TYPES aPPS HSPCH2 @PPS HSPCH2 PC SM3 S'PUNCH NOT READY'' -1 CHALT *TERMINATOR IM16 177777 104024 000763 B8R **MAKE PUNCH READY'' TSTPUN :LOOP AGAIN "TIMER ROUTINE FOR HIGH SPEED PUNCH ‘WAITS FOR READY FLAG IN LOOP “IF READY COMES UP WITHIN ALLOWABLE TIME ; RETURN IS TO CALL+2 “ELSE INIT IS ISSUED TO HSP AND PROGRAM HALTS AT CALL+1 012476 012504 012506 012512 012514 012520 012737 000240 005237 001406 105777 100405 012522 012524 012526 104031 000012 000766 012530 012532 000240 000207 012534 012540 062716 000207 177200 001354 001354 TIMER: TIMER1: 166464 MOV #-600,CTRB INC BEQ CTRB TIMER2 ;UP COUNTER ‘TIMED-OUT...ERROR.. TIMER3 YYES, 0K NOP TSTB 8M] :READY NOT SET, DELAY 10. BR TIMER2: 000002 NOP RTS TIMER3: Aog RT @PPS SO DELAY TIMERT :MAXIMUM=600 MS DELAY *READY BIT SET? 10 MS AND CHECK AGAIN. ;10 MILLI SE DELAY. *GO CHECK AGAIN. PC :RETURN TO CALL+1 22, (SP) ;RETURN TO CALL+2 IF NO ERROR PC JADDITIONAL CODE TO PROVIDE READER LIGHT TEST UNDER OPERATOR s INTERVENTION. JUSE SWITCH 8 TO TURN READER LIGHT OFF. JUSE SWITCH 12(1) TO SELECT NEW READER TO TEST. . L PA611 MACY11 30A(1052) 14=JUN-78 13-JUN-78 12:38 CZPAAC.P11 012542 012544 012546 012552 012554 012556 012560 012562 012566 012572 012574 012602 012610 012612 012614 012622 012624 14:20 PRG13: 104010 015753 004737 104011 005020 016005 016066 177777 013700 032700 001773 052777 032737 001371 000000 032737 001351 000752 PAGE 40 000400 040000 010000 166376 177570 177570 TYPE TITL13 ;OUTPUT TEST HEADER. PRG13C: PRG138B: JSR TYPES ;SW8=1 TO TURN LIGHT OFF. PG13A: 177570 000400 SEQ 0061 1%: PC,RDRSEL IM13A 1?138 MOV ;TEXT ‘PRG13--READER LIGHT TEST'' JSELECT READER VIA SWR. sOUTPUT MESSAGE : JTEXT "'TURN LIGHT ON VIA RDR SWITCH' s TEXT 'USEF§y8 TO TURN LIGHT SR,R0 BIT #400,RO ;CHECK BIT 8. BIS BIT #400,3PRS #81T14,SR JELSE BEQ BNE HALT BIT BNE BR PG13A sSWITCH DOWN, NO ACTION REQUIRED. TURN LIGHT OFF. ;1S SCOPE LOOP SET? 1% ;YES, LOOP UNTIL SR14=0. #10000, SR PRG13( PRG138 ;CHECK FOR SELECT NEW READER. JYES, SELECT NEW READER. ;WAIT FOR OPR TO HIT CONTINUE PA61T MACY1Y CZPAAC.PIN 012626 30A(1052) 14-JUN-78 13-JUN-78 12:38 022445 120 14:20 PAGE 41 APGEND: .ASCII SEQ 0062 ‘XXP' PA611 MACY11 CZPAAC.P11 30A(1052) 14=JUN-78 13-JUN-78 12:38 012631 012636 012641 012646 012654 012662 012664 012672 012700 012704 012712 012720 012726 012734 012742 012750 012752 012760 012766 012774 013002 013010 013013 013020 013026 013034 013035 013042 013050 013056 013064 013067 013074 013102 013110 013116 013120 013126 013134 013142 013150 013151 013156 013164 013172 013175 013202 013210 013216 013224 013232 013240 013243 013250 013256 013264 040 027104 045 040526 051120 040115 022445 046101 051505 022445 051123 047511 047516 051440 030040 040060 022445 042523 051040 026522 020110 022523 045 051101 043517 100 045 051123 020110 053040 027122 045 020043 040505 044440 040056 051445 047440 041516 047111 100 045 027061 044103 027124 045 027067 052116 042524 050101 042516 027122 045 051040 020122 027131 14:20 PAGE 42 SEQ 0063 020040 047105 APN: LASCII ' 037445 044514 043517 047111 020104 040522 (M2: LASCII "XX?INVALID PROGRAMa' 044477 042111 (MmM3: LASCII 'XX?INVALID TESTa' 040124 042523 047440 051516 046522 020122 030060 053116 052040 020124 052120 020056 046101 051511 030060 ASETSR: LASCI] *XXSET SR OPTIONS. NORMAL SR IS 000000a’ 054524 020124 040505 052520 042524 042520 030461 042504 041516 052123 PGTIT: LASCII "XXTYPESET 11 042522 020124 RUNINS: LASCI!I 'XRESTART PROGRAM.a' 040522 052123 051120 027115 042523 053440 042122 041505 020124 052111 030122 047524 MSVCTR: LASCII 'YSET SR WITH RDRO VECTOR.Q' 042523 043117 042504 020116 020124 051040 051522 051123 SELRDR: LASCII *XSET # OF READERS IN SR.a' 052105 020106 042510 051440 021440 052520 020123 027122 SELPCH: .ASCI1 'XSET # OF PUNCHES IN SR.a' 050045 050040 052040 100 050045 041440 050040 047122 020105 040522 043522 047125 051505 TITLY: LASCII 'X%XPRG1. PUNCH TEST.a' 043522 052517 052101 052040 042507 047524 TITL7: LASCI1 *X%XPRG7. COUNT PATTERN TAPE GENERATOR.a' 040515 040505 042522 042513 042504 042101 IM6: LASCI1 '%MAKE READER READY.a' 100 100 100 100 100 END.a®' READER-PUNCH TESTSZa' PA611T MACY11 CZPAAC.P11 013267 013274 013302 013310 013314 013322 013330 013336 013337 013344 013352 14=-JUN-78 13-JUN-78 12:38 30A(1052) 045 027060 042504 052123 046445 052520 042522 SEQ 0064 043522 040505 042524 TITLO: LASCII 'XXPRGO. READER TEST.a' 020105 020110 027131 IM16: LASCII '¥MAKE PUNCH READY.a' 050045 020055 054040 046101 043522 042522 020054 020114 TITLG: LASCI1 'XXPRG6 - READ X, 042523 032461 051123 020124 052040 020070 027117 044103 047524 026104 051440 020117 047524 047440 041505 051440 040056 031107 041516 044522 051505 IM7: LASCI] *XSET SR15 TO SR8 TO NO. OF CHARS TO READ,' LASCII 'XSET SR7 TO SRO TO NO. OF MSECS TO STALL.?' TITLZ: LASCII *XXPRGZ2. IM2: LASCII *XLOAD READER WITH TAPE PRODUCED °* LASCII 'BY PRG1.a' 047040 020106 020123 040505 052105 052040 020060 027137 051515 047524 046114 051120 052520 042526 013744 PAGE 43 050045 051040 020122 040056 045501 041516 042101 100 051440 045 047503 047524 052520 020104 027122 045 027065 051504 020105 14:20 052040 100 047514 040505 044527 050101 042117 040 020131 040056 051120 052520 020123 042504 020124 027122 042523 042504 041040 041516 047111 100 050045 051040 052040 052520 042101 042504 044124 020105 041525 051120 STALL Y.a' PUNCH VERIFY TEST.d' 032107 041516 020062 020123 047111 100 020124 020123 020105 042510 051440 TITLG: LASCI1 "XXPRG4. PUNCHES 2 CODES SET IN SR.a' M4: LASCII "XSET CODES TO BE PUNCHED IN SR.a' 043522 040505 05010" 041516 TITLS: LASCI1 *XXPRGS. READS TAPE PUNCHED WITH CORES SET IN SR.a' PA611 MACY11 30A(1052) 14~JUN-78 13-JUN-78 12:38 CZPAAC.P11 013752 013760 013766 013776 014002 014004 014012 014020 014026 014024 014041 014046 0140564 014062 014070 014076 042510 044124 051505 014112 014113 014120 014126 014134 014142 014150 014151 014156 014164 SEQ 0065 044527 042117 052105 051123 052105 041440 052040 051040 047111 IMS: LASCII "XSET CODES TO BE READ IN SR.a' 051505 052116 040056 030507 051104 042105 027124 IM23: LASCI] ' TITL10: .ASCII 'XXPRG10. RDR SPEED TEST.a' IM10: LASCII 'XLOAD ANY TAPE LOOP IN READER LASCII 'AND MAKE READY.' 047503 042525 051120 051040 042520 051505 100 047514 054516 020105 042101 052040 047514 020116 051105 042116 020105 027131 046440 042522 044440 042101 045501 042101 PAGE 4¢ 020104 041440 051440 020116 051505 042502 020104 027122 051120 014104 14: 20 PRESS CONTINUE.Qa' ' oo T S, SRR RSY PA611 MACY11 CZPAAC.P11 014170 014176 014204 014212 014220 014225 014232 014240 014246 014254 014262 30A(1052) SRR 14=JUN-78 13-JUN-78 12:38 R L L 14:20 PAGE 45 L Tt et B e b e MRS A S 4 A -2 cvmenn cAMREmERAAA 051440 047524 043040 030060 LASCII] 'XSET SR14 TO A 1 FOR 300 SEC ' 124 046511 047111 LASCII 'TIMING, OR SET IT TO O FOR 30 ° 026107 042523 052040 047506 040 047440 020124 020117 020122 040 020122 052111 020060 030063 S el L PP BERmese. e SEQ 0066 052105 020064 030440 031440 041505 B - 6 051445 030522 040440 051117 051440 oo oo e P e & PAG1T MACYT1 CZPAAC.P11 014263 014270 014276 30A(1052) 14=-JUN=-78 13-JUN-78 12:38 123 020104 043516 0641505 044526 040056 14:20 047117 044515 PAGE 46 LASCII SEQ 0067 'SECOND TIMING.a' PA611 MACY11 CZPAAC.P11 014302 014310 014316 014324 014332 014340 014342 014350 014356 014364 014372 014376 014404 014412 014420 014426 014434 014442 014443 014450 014454 014462 014470 014476 014504 014505 014512 014520 014526 014534 014542 014550 014551 014556 014564 014572 014600 014606 014614 014620 014626 014634 014635 014642 014650 014656 014664 014672 014700 014706 30A(1052) 14-JUN-78 13-JUN-78 12:38 050045 041440 052516 051440 052040 027107 051445 020122 020117 052101 047440 044524 050040 020104 052102 042504 051440 040 124 052125 022445 027061 051440 052040 100 045 027063 044502 042522 050055 052040 100 045 050040 051040 020054 020110 020113 051105 047514 040505 100 045 051105 051117 051440 051045 020122 042522 100 16:20 PAGE 47 IM24A: SEQ 0068 LASCII 'XPRESS C(ONTINUE 051440 052040 020061 042116 LASCII *XSET SR 15 TO A 1 043516 047511 047440 020116 042503 042105 LASCII 'TIMING PERIOD 050131 040056 051120 050040 042520 051505 047505 LASCII 'TYPEOUT.Q' 030507 044103 042105 027124 TITLI: LASCII '%%XPRG11. PCH SPEED TEST.a' 050045 041440 042516 042101 043522 046517 020104 051105 044103 027124 TITL3: LASCII 'XXPRG3. (OMBINED READER-PUNCH TEST.a’ 040515 047125 040505 052520 046102 042514 020054 042101 042504 042513 044103 054504 041516 047101 042101 IM3: LASCII 'XMAKE LASCII 'LOAD READER.Q' 042522 042440 041040 052105 040505 047516 0421C1 042101 051122 052111 040056 042504 020124 027131 SM1: .ASCI1 '%XREADER ERROR BIT SET.a' SM2: LASCI1 *XREADER NOT READY.Q' 042522 047117 020105 040524 046511 051523 044524 047524 052122 047111 052105 032461 020101 042440 020106 044515 051105 047524 044501 044526 042520 047125 051505 051040 027122 TO START TIMING.' AT END OF ' TO OBTAIN DEVICE PUNCH READY, SPEED ' PUNCH BLANK LEADER, PA611 MACY11 CZPAAC.P11 30A(1052) 14=JUN-78 13-JUN-78 12:38 14:20 PAGE 48 SEQ 0069 014707 014714 014722 014730 014732 014740 014746 014754 014762 014770 014775 015002 015010 045 044103 051040 040056 022445 051105 042105 022445 020110 020104 040 044103 042520 050045 047040 040505 047125 052117 054504 SM3: LASCII "XXPUNCH NOT READY.a' 042522 051440 042101 042520 SM&: LASCII 'XXZREADER SPEED : @' 052520 050123 041516 042505 SMS: LASCI1 'XXPUNCH SPEED : @' 020040 051101 020122 020040 020123 042523 ACPS: .ASCII ° 015021 015026 015031 015036 015C40 015046 045 020040 040 041520 020040 020040 050045 020040 020040 124 020040 EMO: APNUMB: ATNUMB: LASCIT .ASCII .ASCII 'XXP° ° T ° PC' 020040 041511 020040 052116 APC: LASCIT 020040 020040 AICNT: .ASCII 050106 020040 100 042040 020103 020040 FPCMSG: AFPC: .ASCII .ASCII ' FPC 052101 EM1: LASCII ' DATA ERROR 020122 020072 020040 040527 040 051040 020104 027122 020124 020072 020040 051440 041057 WAS: 040 051440 051105 100 045 051105 051117 041057 020040 040527 040 046045 020122 027122 041040 047105 015016 015054 015055 015062 015064 015072 015100 015103 015110 015116 015124 015126 015134 015141 015146 015154 015162 015170 015176 015200 015206 015213 015220 015226 015234 015235 015242 015250 015256 015262 015270 015275 015302 015310 015316 015324 015332 027103 040 040 040956 020040 020040 022440 040 020101 040527 035040 020072 100 051105 040040 100 047522 CHARS PER SEC.a' ICNT ! rh ' -l S/B: ' 020040 035123 020040 051105 051105 020040 042522 020040 040 040040 040505 047522 051461 042101 ASB: LASCIT ! AWAS: EMZ2: .ASCII .ASCI1 ' a’ ' REREAD ERROR. 020040 020040 ORGRD: .ASCII ° WAS: 020040 047131 047522 040040 020103 027122 SUBRD: EM3: ,ASCII LASCII ' ' Ch SYNC ERROR.Q' 042514 042440 020056 020072 020040 035123 020040 040505 051105 051440 052105 040 0427101 051122 051440 EM4: .ASCII 'XLEADER ERROR. 020040 040 040040 042504 047522 041057 042527 ESB: LASCIT ! EWAS: EMS: .ASCII .ASCI1 ° a' °*XLEADER ERROR. S/B BETWEEN ' 035123 040 WAS: ' ' 1ST READ: ' ¢ S/B: ° ' PA611 MACY11 CZPAAC.P11 30A(1052) 14-JUN-78 13-JUN-78 12:38 015335 015342 015350 015354 015361 015366 015374 015377 015404 015412 015420 015421 015426 015434 015442 015450 015451 015456 015464 015472 015500 060 031440 020123 020040 040 020110 027122 045 051104 047520 015506 015514 015522 015530 015536 015544 015547 015554 015562 015570 015632 015640 015641 015646 015654 015662 015663 015670 015676 015704 015705 015712 015720 015726 015734 015742 015750 015753 015760 015766 SEQ 0070 ° ‘0 AND 3. WAS : 1 EM6: LASLII JASCII ' MATCH ERROR.a' 051040 051505 027105 EM7: LASCII 'ANO RDR RESPONSE.Q®' 040506 042522 044440 052522 051514 042101 052116 052120 EM10: JASCI! ' FALSE READER INTERRUPTQ' 040506 052520 047111 350125 052105 021440 951123 020124 044440 042514 051514 041516 042524 040124 051040 044440 020056 051123 020106 042526 EM11: LASCI!I ' FALSE PUNCH INTERRUPTQ' SRDRM: _ASCII *XSET RDR # IN SR, SET SR15 IF 6 LEVEL.Q' 042523 020110 051440 052105 020065 020124 020043 027122 051440 043111 053105 SPCHM: _ASCII "XSET PCH # IN SR. 040526 042122 027110 INVRP: _ASCI! '%X?INVALID RDR/PCH.Q' 042122 051440 042524 020122 046105 027104 RDRIDM: ARDRID: .ASCII] .AS(CIl] 'XRDR 041520 051440 042524 020110 046105 027104 PCHIDM: APCHID: .ASCII .ASCII 'XPCH °* ' SELECTED.a' 050045 026455 040522 042514 020124 020110 043522 051120 046515 044440 052520 042524 TITL12: .ASCII 'XXPRG12--PROGRAMMABLE 051120 051055 020122 030507 040505 044514 TITL13: .AS(C]! *XPRG13--READER LIGHT TESTa’ 041524 047522 047516 051040 051516 100 046040 040056 047111 020104 041520 100 042504 PAGE 49 LASCIHI 040440 020056 020072 020040 040515 051105 100 015576 015604 015612 015616 015624 14 :20 042116 040527 100 FWAS: ' al SET SR15 IF 6 LEVEL.d' ' SELECTED.?' INIT PUNCH TESTa' PA6G11 MACY11 (ZPAAC.P 015774 016002 016005 016012 016020 016026 016034 016042 016050 016056 016064 016066 016074 016102 016110 016116 016124 30A(1052) 14-JUN-78 13-JUN-78 12:38 044107 052123 045 020116 020124 040505 047117 051040 047117 051440 040110 050045 034127 020061 051125 044107 027106 001450 020124 100 052045 044514 043117 042504 053040 051104 051124 044527 052125 052040 047524 020116 020124 100 16:20 PAGE 50 SEQ 0071 042524 051125 044107 051040 020122 04051 041440 046117 041524 IM13A: LASCII "XXTURN LIGHT OF READER ON VIA RDR (ONTROL SWIT(Ha' 051440 020117 07¢040 064514 043117 IM138: LASCII *ZPUT SW8 TO 1 .END START TO TURN LIGHT OFF.a’ 590 440 459 447 840 326 323 451 650 660 872 64L6H 261 739 280 455 743 1234 7334 2194 5924 597+ 588+ 589+ 218 1147 1172 1193 1218 1961 773 1732+ 1745 1748 1842 1846 946 1370 1781 947 1371 1823 961 1385 1825 963 1387 1148 1477 M”n 1478 754 1733 755 1739 756 1902 758 1904 760 1912 1236 1253 1270 129N 1073 1104 1127 1749 1847 1919 1941 24094 1753 1851 1923 26114 1237 457 2034 1254 1271 1292 1313 769 771 2098 1873 2169 595 S994 6004 596 5854 6014 543 554 1780 734 1798 738 1312 696# 685 1826 289 581 598 5754 689+ 695 1684 710 1720 706 6994 2001 - 1194 1528 418 P1 125 - 000100 004132 004146 6594 124 123 794 BIT7 = 000200 BIT8 = 000400 BIT9 = 001000 003424 BMOVA BREADA BREADB 23894 663 2185# 23954 SEQ 0072 TABLE == USER SYMBOLS 309 020000 040000 100000 000004 000010 000020 000040 BMOVE = 104023 003414 BMOVV 004210 BRCTR BREAD 004064 6 = BIT6 = = = = = - CROSS REFERENCE H 313 BIT10 = 002000 BIT11 = 004000 BIT12 = 010000 BIT13 BIT14 BIT1S BIT2 BIT3 BIT4 BITS 2040 6164 24034 24004 23974 24L784 21754 21764 23944 654 6624 2L74H 658 2634 52 & BDCNVC 003522 BDCNVD 003524 BDCNVV 003436 = 000007 BELL 003214 BINP BINR 003212 BITO = 000001 BIT1 = 000002 1224 2036 PAGE [» Yo] 13-JUN-78 12:38 14:20 — 100000 014775 003600 015072 015055 015040 015670 012626 012631 015024 003754 003764 015646 003714 001614 015126 012704 015031 015141 040000 004274 104020 003470 003520 14-JUN-/8 — A ACPS ADTENP AFP( AICNT APC APCHID APGEND APN APNUMB ARDB ARDC ARDRID AREAD AROUND ASB ASETSR ATNUMB AWAS B = BCHECK BDCNV = BDCNVA BDCNVB CZPAAC.P1 30A(1052) AN O VO -— O\ MACY11 — PAG11 MACYN BREADC BSYNC C = CACHE CCHE CHAINN CHALT = 004172 004352 020000 000774 001612 002012 104024 CZPAAC.P11 CHLTY CHNA CHNAA CHNAB 002542 002044 002062 002040 CHNAC CHNB CHR1 CHR2 CHR3 CLNUP CLNUPA CLNUPB M2 (M3 CNVCTR CPKPL CPKPLA CPRDY CPRDYA CRBUF 002030 002100 001336 001340 001342 005174 005222 005242 012641 012664 003572 012254 012272 004540 004556 001334 CRDA CRDAA CREAD CREADA CREADC CTRA CTRB CTRC CTRD CURTST DECVAL DELAY = DIGIT DLCNT DLCTR DLYAN DLYBN 011034 011050 011020 011102 011116 001352 001354 001356 001360 001260 003612 104031 003574 003124 003126 003104 003110 DLYCN DLYN ECHK ECHKA EHALT = EHLT EHLTA EMTINT EMTITAB EMTV 003120 003064 010530 010566 104025 002554 002564 002176 001364 000030 30A(1052) 14-JUN-78 13-JUN-78 12:38 702 750 1244 I 259 202 2234 1789 222 6 I 14:20 PAGE 53 CROSS REFERENCE TABLE == USER SYMBOLS 7054 7534 260+ 2624 302# 238 1884 424N 3094 3134 312 306# 3174 757 759« 761+ 8774 887 _888# PAREL 21824 594 2030 20394 801 794 697« 1752 18154 18204 1814 18264 18294 1682 1683 1900« 1901« 291 6214 647 607« 508 1741 17584 470 4304 4334 3374 341 019 300 2076 800 2121 1082 1086 1903+ 1905+ 1906 1908 1931 1933 1456 1476 1504 1529 1549 759 1850 761 1862 1685 1865 1903 1699 1706 1905 1713 1915 1731« 1935+ 1933 1735+ 1995« 1994« 1738+ 2004+ 1998+ 1742+ 2020+ 1999« 2002+ 2026+ 2005 2005+ 2035 1013 1641 1964 2138 244 1899 1955 1975 1993 1074~ 1075« 1076 1076 774 776 778 250 255 273 814 850 1681 1770 6134 20334 803 7964 734 1820+ 1724 1937 1833 1689+ 1687+ 1906 1908 333« 651 610~ 5174 514 512 5154 SOS#4 1309 1235 1251 SEQ 0073 1288 1267 763 o PAG61T 17454 1940 2024+ 2130~ 2027+ 2132+ PAG11 MACYI11 EMTX = 000032 EMO EM1 EM0 EM11 EM2 EM3 EM4 EMS EM6 015021 015103 015421 015451 015146 015220 015235 015302 015361 ERCTR ERR ERRB ERRN ERRNA ERRNB ERRNC ERROR = 001344 002566 002714 002576 002702 002716 002734 104015 CZPAAC.PI EM?7 015377 ERRORN= 104016 ERRT ESB ETOA ETOB ETOC ETOD ETOE ETOF ETOG ETOH ETOI ETOJ ETOK EWAS FORWD FORWDA FPC FPCMSG FSTPCH FSTRDR FSTVCT FWAS GETBNP= GETBNR= GETRDY GORUN GRCNT GRCNTA GTBINP GTBINR GTROYA 001326 015262 010232 010240 010246 010276 010304 010314 010336 010412 010446 010460 010506 015275 002136 002162 001362 015064 001222 001220 001244 015354 104030 104027 001712 001750 004244 004246 003216 003274 001734 30A(1052) 14-JUN-78 13-JUN-78 12:38 1264 2154 228# 461 746 708 1794 1090 786 1717 1728 1945 656 1924 215 443 216 462 L34 4704 2164 1130 1440 16:20 PAGE 54 CROSS REFERENCE 2034 2164 23934 1756 24464 1695 24204 24514 24124 26234 24304 24394 693 748« 434n [ANA 435 469 436x 912 1152 1460 655 1853 1704 24274 1697 1693 1690 1994 24024 437+ 1494 1484 1584 1725 227H 226 284n # 29 7240 7254 226 225 2884 1854 1818 2174 1817 1854 1710 16824 16834 16844 1686 1691 1688 1700 1707 1722 17334 17394 1714 288 3334 2044 2174 16924 16944 1698# 044 17204 17314 1736 1743 2442n 2054 2184 1926 J 6 SEQ 0074 TABLE =~ USER SYMBOLS 2064 2194 208# 2214 2094 222H 2104 223 1866+ 1872+ 1911« 1928+ 1571 733 301 295 727 726+ 5364 5474 297 2134 2264 2144 227 24054 764 879« 1838« 1856+ 1861 446 461+ 4654 467 468 463 LEOH 927 943 1196 1487 949 1203 1509 707 1222 1532 745 965 982 1338 1554 785 1000 1353 1021 1588 1023 1373 1042 1389 1060 1604 1110 1621 1089 1694 1716 1727 1755 1793 1779 1740 1797 1841 1982 4364 1175 1480 664 692 1925 1705+ 1944 1706 1719 1730 1709 1744 1703 1702 24294 3284 823 859 239+ 24384 2124 2254 c074 2204 439 833 865 1592 1618 770 1644 772 1310 1616 768 318 1289 728 327 PA611 MACYN GTRDYB GTRDYC GTRDYD GTRDYX 001740 001754 001772 001720 CZPAAC.P11 HSPCH 004572 HSPCH1 HSPCHZ HTOA HTOB HTOC HTOD HTOE HTOF HTOG 012372 012462 011454 011524 011532 011564 011612 011642 011664 I = 000040 ICNT 001266 ICTR 001270 1€ = 000100 014113 IM10 IM13A 016005 IM138 016066 013314 IM16 m7z 013371 M2 IM23 IM24A IM3 IM4 () IM6 INBIN = INBINN 013547 014041 014302 014551 013663 014004 013243 104026 003130 INRNDN INVRP 10TV ITA 178 ITC 003676 015616 000020 011712 011740 011752 KBSVC KSTART KTA KT8 002510 001256 012056 012104 INITD 001252 INRND = 104022 I1TX 1TY KTC KTD KTE KTF LTA LTB LTC LTD LTE 011760 011754 012114 012132 012140 012146 012200 012212 012230 01223%6 012244 30A(1052) 14-JUN-78 13-JUN~-78 12:38 289«# 290 2964 2854 803# 2023 K 6 14:20 PAGE 55 CROSS REFERENCE TABLE == USER SYMBOLS SEQ 0075 2924 320 1572 1593 2083 2115 20904 21174 1929 1936 1916 1943 19314 19374 1932 1619 1645 1656 1669 1662 1665 1886 1888 1978 1897 2074 2298# 1947 1930 1938 1934 19444 305+ 331« 334+ 458 877+ 1881 1973 2076 2073 2119 22364 242 2017 248 23294 281 812 848 1679 1768 1882 1678 753 1767 1570 1896 1591 22284 1640 1737 177 1981 230 252+ 303« 311« 2306+ 24L93N 25024 22454 2264H 23614 22784 2293 5204 1614 64N 85¢ 1966 1963 19644 24694 1962+ 19654 418+ 894 19674 419 1320+ 1615 1983 PAG1T MACYTY CZPAAC.P11 MACHER 000004 MANUAL= 100000 MONE MSVCTR NOP = NXTST OACNV = 012302 013035 000240 001264 104017 OACNVA 003356 003344 OACNVV OPEN = 000000 ORGRD PBIN PBNA PBNB PBNC PBND PCHCNT PCHIDM PCHLIM PCHLVL PCHMSK PCHOUT PCHSEL PCHSLA PCHSLB PCHVTR PFRNT PGTIT PG12A PG128 PG13A PIND POPSP = POPSP2= PPB PPS PRB PRGID PRGNUM PRGTAB PRGO PRC1 PRG10 PRGI1 PRG12 PRG13 015200 010676 010714 010730 011000 011014 011124 015663 001250 001216 00134¢ 001332 004622 004652 005002 001214 010122 012752 012342 012330 012562 003200 005726 022626 001206 001204 001202 001274 001254 001276 005244 006716 012034 012156 012306 012542 30A(1052) 14-JUN-78 13-JUN-78 12:38 S3a 784 20634 235 764 1664 2184 1712 5624 217 7n 14:20 PAGE 56 CROSS REFERENCE 909+ 2080 22024 349 284x 321 1723 L 6 SEQ 0076 TABLE == USER SYMBOLS 9264+ 1335+ 1350+ 436 296 438 1747 319 445 1751 4,49 1845 453 1849 870 1081 1708 143 168 195 144 160 187 161 188 163 1 715 1821« 18314 142 167 194 529 680 164 191 518 614 1965 1083 325 530 330 169 196 53 465 599 466 730 731 1885« 1887+ 1977« 1482+ 517 613 1832 1778 1786 1792 1803 1807 1773« 843 1604 1674 1934 1874 1799 815 1502 804 804* 2093 1323 826+ 1613 1806 1526 834w 805 1655+ 837« 2092 1659~ 1661+ 1664 1764 1878 1971 2014 2071 828~ 829+ 830« 831« 832« 833« 1435 822+ 1457 179 1780+ 1798« 2093« 1458+ 1808+ 1074 1075 827* 1638 16544 = 2021 2080+ 1366 1505~ 2097+ 1370+ 1507+ 538« 379 824+ 399 825+ 1387 1550« 1402 1551 1418+ 821« 1438 1785 860« 861« 1057 322 450 823« 1823 1336 1478« 1825+ 1365+ 1503+ 2078« 1105 1108 1820 824 1477 2112 PA611 MACY11 CZPAAC.PI PRG13B 30A(1052) 14=JUN-78 13-JUN-78 12:38 012552 2174 174 17614 012546 010206 21594 173 PRG4 PRG4A PRGS PRG6 PRG7 011342 011366 011414 011674 011762 175 18854 176 177 178 PRS 001200 010570 PRC7A PRG/B 012912 012024 19784 19824 1404 859 1191 M0 145 58 734 60 265« 115¢ 1144 1134 1120 PRTYS = 000240 PRTY6 = 000300 1104 1094 PRTY7 = 000340 PSWw = 177776 1980 1984 1125 * 000000 000040 000100 000140 PRTY4 = 000200 18764 1889 18914 19504 19694 649 910 1018 1150« 1 = * 005742 10754 1079 POPE POCA POGB PORA 006144 006200 006220 006260 006272 64 285+ 08¢ 687+ 131 700+ 265 1125 285 1145+ 700 1169« 1221 11720* S41x 542 543 S4é4 540 927 940w 946H 961k 977H 984H 9954 10124 10214 10234 10354 POPA 157 537+ 92 935 942 957 973 981 991 1008 101€ 1017 1031 005766 006026 006074 006126 155 536= 005342 005356 005400 005432 005466 005506 005520 005552 005602 005606 005622 - 147 5304 POBB PODA PODB POEA POFA POFB POGA POHA POHB POHC POIA POMC PONA POOA POOB 1055 1219« 523x 1044 1054 9104 9124 POMB 696+ 961+ 1054+ 1217+« 1552« 905 909 005664 005724 691+ 947 1040 1194+ 1527+ 005304 005312 POJA POMA 686+ 946+ 1039+« 1192+ 1526+ POAA POAE 005334 659 941 1037 1173« 1502« 003202 POBA 653 940+ 1036« 1171« 1475+ PTO PT1 003204 PUSH - 005746 PUSH2 = 024646 522« 920 1050 1068 1077 1095 1118 1126 1138 144 1162 1168 1185 SEQ 0077 2173 16734 646% 860 1015 ;}22* 1012« 1;38* PRTYO PRTY1 PRTYZ2 PRTY3 PAGE 57 CROSS REFERENCE TABLE == USER SYMEZLS 21604 PRG13C PRG2 PRG3 14:20 M6 5208 361 536 393 9254 10544 10724 10814 11034 11254 1131 11454 11520 11694 11784 118 1106 542w 1553+ 1782« 701 963 705 977+ 1058 1805+« 856+ 980 1107« 181 857« 995« 1126+ 1815 858+ 998 1128« 1827+ 1553 1197« 1220« 1221+ 1455» . PAGTT MA(CY11 PORC PORD PORE POSA POSB POTA POTLST= POTO POT1 POT10 POT11 POT12 POT13 POT14 POT1S 006330 006344 006350 006370 006422 006440 177777 005266 005316 005654 005714 006016 006060 006130 006204 CZPAAC.PI POT16 POT17 006262 006354 POT20 POT21 POT22 POT23 POT24 POT3 POT4 POTS POT6 006424 006452 006510 POUA 006474 POXA POXB POYA POYB P1AA P1AB P1BA P188 P1CA P1(B P1DA P1EA P1FA P1GA P1HA P1HB P114 006612 006620 006670 006676 006756 006764 007006 007014 007030 007052 007104 007140 007162 007220 007266 007316 POT?2 POT?7 POVA POVB P113 P11Z P11D P1JA P1J8 P1KA P1KB P1LA 005346 006562 006640 005422 005456 005510 005542 005612 006532 006542 007330 007366 007402 007406 007426 007462 007502 007542 007560 30A(1052) 14-JUN-78 13-JUN~78 12:38 N 6 14:20 PAGE 58 CROSS REFERENCE TABLE == USER SYMBOLS SEQ 0078 e PAGTT MACYT1 PILB PIMA PIMB PINA PINB 007614 007626 007644 007700 007716 1548 1563 15714 1582 1592# 15564 1567# 1574 1588~ 1596 P108 P10C P10D P1PA P1PB P1PC 010000 010006 010032 010044 010062 010074 16164 16184 1621 1631 16614 16444 1624 1623 16254 16374 1650 1649 177777 006740 006770 007320 118# 1320 1329 1446 1629 13284 13434 14664 007544 007616 1517 1541 CZPAAC.P P10A 007762 P1PD 010120 P1ITI PITI12 007412 007466 P1T1S 007662 P1T7 RBIN RBINA RBINB RBINC RBIND RBUSY RCMSK RCNT RDRIDM RDRLIM RDRLVL RDRMSK RDRSEL RDRSLA RDRSLB RDRVTR RIND RNCNT RNDNUM= RNGEN RP1 RP2 RSTO3 = RSTOS = RSTO5S= RSTSS = 007252 011162 011166 011202 011240 011270 011126 004270 001330 (15641 001246 001212 001350 005020 005050 005156 001210 003176 004272 104021 003620 003672 003674 104003 104005 104007 000004 PI1TLST= P1T0 P1TY P1T10 P1T13 P1T14 P1T16 P1T17 P1T2 P1T3 P1T4 P175 P1T6 007736 010034 007020 007074 007130 007152 007210 30A(1052) 14=J IN-78 13-JUN~-78 12:38 1604 1647 1467 1493 1561 1580 1602 1344 1359 1379 1395 1410 1427 1837 1839 1843 1857 1860 1774« 726 186# 875 1594 1454 1944 8464 852 868 1444 520+ 728% 22CH 219 625 v28 206# 208# 2104 1284 164:20 8 PAGE 59 s e e o ] 7 CROSS REFERENCE TABLE =-- USER SYMBOLS SEQ 0C79 16124 16514 14924 15164 15404 15604 15794 16014 1628#4 13584 13784 13944 14094 14264 14454 1840 18414 18454 18594 1864# 1802 7304 1567« 2L73n 245+ 674 552 855 8564 8704 672 521 7314 714 (24N 629% 632 515 411 427 471 1871 1870 1804 1287« 1573+« 1826% 1308« 1588+ 18324 1611x 1595« 1859« 1873« 1612+ 1620+ 1637+ 1646* 826 1145 866+ 897 851 1169 869+ 1675 1705 1763 1893 1952 1988 2159 862+ 522 1268x 724 863 523 1272+ 864+ 524 1293 865« 525 1314r 1198+ S27H 1622% 1837 549+ 1643%x 1860+ 636 635+ 6354 6404 642 643 780 479 499 788 572 582 602 637 1648+ 1871« 002316 002346 002342 002426 001262 003206 003210 RUNINS SAVO3 = SAVOS = SAVOS5S= SAVSS = 013013 104002 104004 104006 000003 SCOPE = 104000 SCOPTR SELPCH SELRDR SM1 SM2 SM3 SM4 SM5 SPBOT = SPCHM SR = 001272 013120 013067 014635 014664 014707 014732 014754 001200 015547 177570 SRDRM SRESET= SRSET SRSETA SRSETT STAL STALA STALB STALL = START STLA STLMSK STPCHV= STPPA STPRA STPTPV 015500 104001 001700 002506 002452 004212 004236 004240 104012 001450 004214 004242 104014 004052 004022 004034 STRTA STRTB 001564 001664 14-JUN-78 13-JUN-78 12:38 205 207 209 59 1654 524+ 525+ 254 2054 2074 2094 14:20 SvO05 015213 003532 003536 003552 002216 002246 SEQ 0080 CROSS REFERENCE TABLE =-- USER SYMBOLS 315 547 547~ 766 474 495 913 1080 1274 1462 1274 2034 1043 1238 1422 1651 1694 247 241 665 329+ 553~ 548 878+ 552+ 553 557 585 624 926 1092 1295 1481 945 1131 1337 1488 950 1151 1339 1508 292 856 2098 554 984 1178 1354 1536 1001 1197 1369 1556 1020 1202 1374 1575 1022 1204 1390 1597 1024 1224 1405 1625 306 313 871 2172 317 2165 309 867 2169 1885 430 1887 462 1900 1433 332+ 23754 797 2009 203 754 811 724 815 1901 847 2044 2794 413 2118 23794 286 302 245 830 251 267 1959 1996 2006 289 851 2028 287 1324 962 1035 1103 1386 1416 203 212 409« 2134 1269 718+ 717 133 7154 716 6054 606 204 206 7 3084 3794 3774 STPTRV 004004 STRDRV= 104013 SUBRD SUBTEN SUBTNA SUBTNB Sv03 c PAGE 60 b RSO3 RSO5 RSO5S RSSS RINNO RTO RT CZPAAC.P11 30A(1052) NN — O SRV IV, Te OV MACY11 — PA611 3524 2294 2508 1290 131 1594 1617 1809 1250% 1473 1266+ 1500 1286+ 1524 1307« 1547 1587+ 1777 1610+ 1123 274 1143 1167 1189 1215 1775 1772+ PAG11 MACY11 SVOSA Sv058 SvO5C SVOS5S SV5S SYNCA SYNCB SYNCC 002254 002270 CZPAAC.P11 TENPWR TIMER TIMERT TIMER2 TIMER3 TITLO TITLT TITL10 TITL1I1 TITL12 TITL13 TITLZ TITL3 TITL4 TITLS TITL6 TITL7 TKB TKLVL TKS TKVTR TLAST = P8 TPLVL TPS TPVTR TRC = TRCV TRPV TSM2 TSTPUN TYP TYPA TYPC TYPD TYPE 002302 002236 002376 004440 004446 004522 003576 012476 012504 012530 012534 013267 013151 014062 014454 015705 015753 013514 014505 013620 013723 013337 013175 001226 001236 001224 001234 177777 001232 001242 001230 001240 000003 000014 000034 003772 012444 002742 002746 002762 002776 = 104010 TYPES = 104011 TYPF TYPG TYPS TYPSA 003012 003022 003034 003056 TYPSB 003060 WNZERO 011130 X = 000017 30A(1052) 14-JUN-78 13-JUN-78 12:38 350 347 366+ 208 57 762 /684 775 592+ 2095 21314 2133 2135 896 1322 1987 2013 2070 2158 1674 1762 1877 1892 1951 1970 114 1554 1504 154% 1194 1534 1574 1524 1564 1204 STH 654 662 2079 210 L4764 478 483 2114 1321 2124 1989 482 il 21 498 496+ 1776 8924 1003 1139 14:20 3534 I57x 349+ 3494 3894 7664 784 777 605 2100 2140 21424 21454 22324 22174 23014 23454 24814 24884 2255A 23544 22724 r.284H 22404 22214 417 0D PAGE 61 7 SEQ 0081 CROSS REFERENCE TABLE == USER SYMBOLS 352+ 3624 1869 779 7834 609 21304 6154 703 1813 414+ 485« 486 6644 21124 474K 484 4814 4854 232 1673 234 cCl5 484 L4954 5014 497 18334 900 10094 1157 2122 493 490 492 1761 1787 253 240 2038 271 298 1876 817 1891 1950 810 501 1953 846 1969 1676 842 1986 1765 9364 1063 12124 952 10694 1226 9584 1094 12324 968 11004 1240 325 246 2072 279 2117 796 2160 915 10324 1180 9214 1045 11864 930 10514 1206 464 874 2069 895 2157 986 11154 1257 9924 1133 12634 1894 1972 503 5024 9064 1026 1163# 974n 1113 12464 PA611 MACY11 CZPAAC.P11 Y = 000001 . 012304 " ZERO 016127 30A(1052) 14=-JUN-78 14:20 13-JUN-78 12:38 1276 1392 15204 893 1133 1376 20644 S0# 420 1829 E PAGE 62 7 CROSS REFERENCE TABLE == USER SYMBOLS 12824 13984 1538 900 1157 1392 2082 51 487 1059 1296 1407 156444 915 1180 1407 53 539 1109 1302 1613 1558 930 1206 1424 55 550 1372 13184 14624 15644 952 1226 1443 61 690 1388 1326 16304 1577 968 1240 1464 65 735 1403 13324 1443 15834 986 1257 1490 674 749 1420 SEQ 0082 1347 16498 1599 1003 1276 1514 70 807 1439 13474 1464 16054 1026 1296 1538 1294 948 1658 1356 14704 1626 1045 13194 1558 1324 964 1667 13624 1490 16324 1063 1326 1577 1344 999 1784 1376 14964 13824 1574 1094 1341 1599 1113 1356 1626 1394 1038 1800 256 1041 1835
Home
Privacy and Data
Site structure and layout ©2025 Majenko Technologies