PRST NOP CLF 0 JSB RESET LDB BIT.0 EXIT JSB SWRT,I TO JMP ARROW CCB MAKE B=ALL ONES JSB PUDVR JSB PUDVR JSB PUDVR OUTPUT A CHARACTER FOR END JSB LEADR AND A LEADR JSB MSGH,I TELL OPERATOR TO TEAR TAPE . DEF T5M1H JSB READ2 READ AND VERIFY PUNCHED TAPE JMP TST06,I * D1000 OCT 10000 T5PSC OCT 0 T5RSC OCT 0 BIT.0 OCT 1 * * * * * SPC 1 * SPC 1 T5IEH NOP THIS ROUTINE TELLS OPERATOR JSB MSGH,I TO CLEAR SW BIT0, THEN HALTS DEF INITM NOP JMP T5IEH,I SPC 1 * SPC 1 PNCH1 NOP PUNCH ROUTINE #1 LDB SPAD1 CHECK FOR POINTER CPB .END. OUT-OF-BOUNDS JMP PREST RESET POINTER LDB SPAD1,I GET THE DATA TO PUNCH ISZ SPAD1 BUMP POINTER JSB PUDVR PUNCH THE (BREG) JMP PNCH1+1 DOIT AGAIN PREST LDB BUFST RESET PUNCH STB SPAD1 POINTER JMP PNCH1,I EXIT * SPAD1 OCT 0 BUFST DEF BUF5 .END. DEF BUFND PUJSB JSB SO.SO,I SKP T5ERR NOP ERROR HANDLING ROUTINE STA T5ARS SAVE THE A AND B STB T5BRS REGISTERS FOR LATER LDB .BAD JSB MKBUF AKE THE "BAD" BUFFER NOP LDA SPAD6,I GET THE "GOOD" DATA PATTERN LDB .GOOD POINTER TO GOOD DATA BUFFER JSB MKBUF MAKE THE GOOD BUFFER NOP LDA T5ARS LDB T5BRS RESTORE THE A AND B REGISTERS NOP JSB ERMS,I REPORT THE ERROR DEF ABBGM NOP JMP T5ERR,I EXIT ROUTINE * T5BRS OCT 0 T5ARS OCT 0 SPC 1 * SPC 1 R.SET NOP LDA BUFST RESET THE STA SPAD6 RDR POINTER JMP R.SET,I SPC 1 * SPC 1 RESET NOP LDA BUFST RESET STA SPAD6 READ AND STA SPAD1 PUNCH POINTERS JMP RESET,I * SPAD6 OCT 0 SPC 1 * SPC 1 PINTR NOP PUNCH ROUTINE USING INTERRUPT NOP LDB SPAD1 POINTER CPB .END. OUT-OF-BOUNDS? JMP PRST YES, RESET LDB SPAD1,I NO, GET NEXT DATA ISZ SPAD1 BUMP POINTER NOP DEBUG T5PI1 OTB PUNCH T5PI2 STC PUNCH,C NOP JMP PINTR,I EXIT SKP READ1 NOP MAIN READ ROUTINE JSB R.SET INITIALIZE POINTERS, ETC SPC 1 .RD.1 LDA SPAD6 CHECK POINTER FOR CPA .END. OUT-OF-BOUNDS JMP READ1,I FINISHED, BACK TO CALLING ROUTINE JSB READ OK TO READ NOP CPA SPAD6,I READ VALID? JMP *+2 YES, PASS ERROR HALT JSB T5ERR REPORT ERROR ISZ SPAD6 BUMP POINTER NOP DEBUF JMP .RD.1 SPC 1 * SPC 1 READ2 NOP FINISH READ ROUTINE JSB SYNC TAKE UP LEADER JSB R.SET RESET POINTERS ETC SPC 1 .RD.2 LDA SPAD6 CPA .END. OUT-OF-BOUNDS JMP NDCK1 JSB READ OK TO READ NOP CPA SPAD6,I READ VALID? JMP *+2 YES, PASS ERROR HALT JSB T5ERR REPORT ERROR ISZ SPAD6 BUMP POINTER NOP DEBUF JMP .RD.2 SPC 1 * SPC 1 NDCK1 JSB READ GET NXT CHARAT CPA ENDCH ALL 1,S? JMP NDCK2 YES, DO 2ND CHECK JSB SYNC NO, READ ANOTHER BUFFER JMP READ2+2 * * * * * SKP * SPC 1 NDCK2 JSB READ GET NXT CHARACTER CPA ENDCH JMP READ2,I END FOUND, EXIT JSB ERMS,I DEF OVRUN NOP JMP *-1 * ENDCH OCT 377 SPC 5 BUF5 OCT 377,201,125,252,333,155,066,033 OCT 204,037,340,377,127,201,102,145 OCT 132,347,030,377,132,245,030,102 OCT 044,030,201,245,102,044,030,231 OCT 044,102,201,377,252,125,250,377 OCT 000,347,122,255,211,152,235,052 OCT 367,010,167,030,245,044,333,000 OCT 377,201,125,252,333,155,066,033 OCT 204,037,340,377,127,201,102,145 OCT 132,347,030,377,132,245,030,102 OCT 044,030,201,245,102,044,030,231 OCT 044,102,201,377,252,125,250,377 OCT 000,347,122,255,211,152,235,052 OCT 367,010,167,030,245,044,333,000 OCT 377,201,125,252,333,155,066,033 OCT 204,037,340,377,127,201,102,145 OCT 132,347,030,377,132,245,030,102 OCT 044,030,201,245,102,044,030,231 OCT 044,102,201,377,252,125,250,377 OCT 000,347,122,255,211,152,235,052 OCT 367,010,167,030,245,044,333,000 OCT 377,201,125,252,333,155,066,033 OCT 204,037,340,377,127,201,102,145 OCT 132,347,030,377,132,245,030,102 OCT 044,030,201,245,102,044,030,231 OCT 044,102,201,377,252,125,250,377 OCT 000,347,122,255,211,152,235,052 OCT 367,010,167,030,245,044,333,000 BUFND OCT 377 * HED PUNCH OUT THE LOOP * * * TEST 07 * * THE MESSAGE "H060 TO MAKE LOOP, PUNCH ON * AND RUN" IS OUTPUT, AND THE COMPUTER HALTS. * THE OPERATOR CAN MAKE A LOOP BY FOLLOWING * THESE INSTRUCTIONS. THREE ITERATIONS OF * THE DATA BUFER WILL BE OUTPUT TO THE PUNCH * * THIS TAPE CAN THEN BE MADE INTO A LOOP * USING A TAPE REPAIR PATCH, OR TRANSPARENT * TAPE. * * THIS ROUTINE WILL NOT RUN AS PART OF THE * DIAGNOSTIC, BUT CAN BE CALLED AT CONFIGURATION * TIME BY THE OPERATOR * * * * * * * SKP TST07 EQU * SPC 1 NOP JSB PSCHK WANT TO RUN TEST? JSB MSGH,I OUTPUT MSG DEF T7MSG LDA OCT.3 INITIALIZE STA R7X3C XTHRU COUNTER LDA NDN40 INITIALIZE STA R7SP1 40 COUNTER JSB R7LDR PUNCH LEADER SPC 1 * SPC 1 R7HR1 LDA NDN20 PUNCH A LEADER OF 20 STA R7SP1 FEED JSB R7LDR FRAMES LDA NDN55 INITIALIZE THE STA R7SP1 XTHRU 55 LDA R7BFP SET UP THE STA R7SP2 DATA PIINTER SPC 1 * SPC 1 R7HR2 LDB R7SP2,I GET DATA WORD JSB PUDVR PUNCH IT ISZ R7SP2 BUMP POINTER ISZ R7SP1 FINISHER ONE BUFFER? JMP R7HR2 NO, GET ANOTHER WORD ISZ R7X3C YES FINISHED 3 BUFFERS? JMP R7HR1 NO, PUNCH MORE LEADER LDA NDN40 YES, INITIALIZE STA R7SP1 JSB R7LDR AND PUNCH A TRAILER JMP TST07,I EXIT SPC 1 * SPC 1 R7LDR NOP THIS ROUTINE PUNCHES CLB AN ALL ZEROS LEADER/TRAILER JSB PUDVR ISZ R7SP1 JMP *-2 JMP R7LDR,I * OCT.3 DEC -3 R7X3C OCT 0 ROUTINE 7 X3 COUNTER NDN40 DEC -40 R7SP1 OCT 0 NDN20 DEC -20 NDN55 DEC -55 R7BFP DEF BUFER R7SP2 OCT 0 HED PUNCH SWR BITS 0-7 * * * TEST 10 * * THIS UTILITY ROUTINE OUTPUTS SWITCH * REGISTER BITS 0-7 TO THE PUNCH. * THIS ROUTINE MUST BE CALLED BY THE * OPERATOR. * * * * SKP TST10 EQU * SPC 1 NOP JSB PSCHK WANT TO RUN TEST? JSB MSGH,I DEF T10MS X2 JSB SWRT,I NOP JSB PUDVR LDA B AND BIT13 SZA JMP X2 JMP TST10,I * BIT13 OCT 20000 SKP HED READER SPEED TEST * * TST11 * * TEST 11 IS THE READER SPEED TEST. IT IS ANOTHER UTILITY TEST * WHICH MAY BE SELECTED BY THE OPERATOR. THE INITIAL MESSAGE * INSTRUCTING THE OPERATOR TO SELECT A SWITCH REGISTER BIT TO * DIFFERENTIATE BETWEEN 2748/58 AND 2737 PHOTOREADERS, AND THE * PROGRAM HALTS THE COMPUTER. IF THE READER IS A 2737, BIT 5 * SHOULD BE SET TO A ONE. IF THE READER IS A 2748/58, BIT 5 * SHOULD BE SET TO A ZERO. AND RUN MUST BE PRESSED. THE READER * WILL THEN ADVANCE TAPE, AND THE PROGRAM WILL CALCULATE THE * READER SPEED. IF THE SPEED IS CORRECT, THE TEST IS TERMINATED * IF A SLOW SPEED IS DETECTED, THE ERROR IS REPORTED AND THE A * REGISTER CONTAINS THE NUMBER OF ACTUAL CHARACTERS READ, THE B * REGISTER CONTAINS THE EXPECTED NUMBER OF CHARACTER. * * IF THE OPERATOR WISHES THIS TEST TO CONTINUE LONGER THAN THE * NORMAL ONE SECOND, HE MAY SET SWITCH REGISTER BIT 7 TO A ONE * PRIOR TO THE START OF TEST 11 EXECUTION. TO EXIT THIS LOOP * CONDITION, SWITCH REGISTER BIT 7 SHOULD BE SET TO A ZERO. * * * SKP TST11 EQU * SPC 1 NOP JSB RSCHK WANT TO RUN TEST? JSB MSGH,I OUTPUT INSTRUCTION MESSAGE DEF RSTM1 AND HALT. JSB FREQ,I SET CHAR/SEC CONSTANT FOR 50/60 HZ LDB BIT05 IS THE READER A JSB SWRT,I 2737? JSB RMXRT YES, GET THE 300 CPS CONSTANT LDA HPRDC NO, GET THE 500 CPS CONSTANT STA MBGTC AND PUT IN HOLD/CONSTANT LDA RSJSB PUT THE READ/COUNTER SUBROUTINE STA RSRSC,I ADDRESS IN THE RDR S.C. LDA RSTIR ESTABLISH THE BASE STA RRLNK PAGE LINK ADDRESS .TS11 CLA ZERO THE INTERRUPT STA RSICL COUNTER LOCATION. LDA OSTMC GET THE ONE SECOND CONSTANT STF INTP TURN INTSYS ON RIOA1 STC RDR,C TELL THE READER TO START UP JSB TMRR,I START TIMING CLF INTP TURN OFF THE INTERRUPT SYSTEM RIOA2 CLC RDR,C ROUTINE CLEAN-UP LDA RSICL GET THE INTERRUPT COUNT ADA MBGTC SUBTRACT THE MBG CONSTANT SSA,RSS IN READ SPEED SPEC? JMP RSEDR YES, JUMP OVER ERROR LDA RSICL GET COUNT FOR DISPLAY LDB MBGTC NO, WAS THIS THE TEST FOR CPB RXRDC THE 2737 READER? JSB ERRMX YES, REPORT 2737 SPEED SLOW JSB ERRHP NO, REPORT 2748 SPEED SLOW JSB LPCHK BIT 7=1? JMP .TS11 YES, LOOP UNTIL =0 JMP TST11,I EXIT THE LOOP AND ROUTINE * SPC 4 RSTIH NOP ISZ RSICL BUMP INTERRUPT COUNTER RIOA3 STC RDR,C HIT THE READER AGAIN, JMP RSTIH,I AND BACK TO THE TIMER. * RSICL OCT 0 INTERRUPT COUNT LOCATION SPC 2 RSEDR JSB MSGC,I TELL OPERATOR TEST IS DEF RSEND FINSHED, & EXIT JSB LPCHK BIT 7=1? JMP .TS11 UES LOOP JMP TST11,I NO, EXIT LOOP RMXRT NOP LDA RXRDC GET THE 2737 CONSTANT ISZ RMXRT GO PAST 2748 INSTRUCTION FETCH JMP RMXRT,I AND EXIT * RXRDC NOP CONTAINS 2737 CPS CONSTANT SPC 2 ERRMX NOP CMB,INB MAKE B POSITIVE FOR DISPLAY ISZ ERRMX BUMP PAST NEXT ERROR JSB ERMS,I REPORT THAT THE 2737 DEF RMXEM SPEED WAS TOO SLOW. JMP ERRMX,I AND EXIT SPC 2 ERRHP NOP CMB,INB MAKE B POSITIVE FOR DISPLAY JSB ERMS,I REPORT THAT THE 2748/58 DEF HPREM SPEED WAS TOO SLOW. JMP ERRHP,I SPC 2 * * HPRDC NOP CONTAINS 2748 2758/CPS CONSTANT MBGTC OCT 0 WILL CONTAIN CONSTANT FOR TIMING RSJSB JSB RRLNK,I RSRSC OCT 0 WILL = RDR S.C. AFTER CONFIG. RSTIR DEF RSTIH RDR ROUTINE POINTER OSTMC DEC 1000 ONE SECOND TIMER CONSTANT FREQ DEF ZFREQ POINTER TO FREQUENCY ROUTINE * * * * SKP SKP HED PUNCH SPEED TEST * * TST12 * * TEST 12 IS THE PUNCH SPEED TEST. LIKE THE READER SPEED TEST, * IT MUST BE SELECTED BY THE OPERATOR, AND LIKE THE READER TEST * IT REQUIRS A SWITCH REGISTER INPUT FROM THE OPERATOR TO INFORM * THE PROGRAM WHICH PUNCH IS BEING TESTED. SWITCH REGISTER BIT6 * MUST BE SET TO 1 IF THE PUNCH IS A 2753, OR SET TO 0 IF THE * PUNCH BEING TESTED IS A 2895. * AN INSTRUCTION MESSAGE IS OUTPUT INFORMING THE OPERATOR OF THE * NEED TO SET OR CLEAR BIT6, AND THE PROGRAM HALTS AWAITING THIS * INFORMATION. * * IF THE OPERATOR WISHES TO EXTEND THE EXECUTION TIME OF THIS * TEST, SWITCH REGISTER BIT 7 SHOULD BE SET TO A ONE PRIOR TO * THE START OF EXECUTION. TO EXIT THIS LOOP CONDITION, SWITCH * REGISTER BIT 7 MUST BE SET TO A ZERO. * * * SKP TST12 EQU * SPC 1 NOP JSB PSCHK WANT TO RUN TEST? JSB MSGH,I OUTPUT INSTRUCTION MESSAGE DEF PSTM1 AND HALT LDB BIT06 IS THE PUNCH TO BE JSB SWRT,I TESTED A 2753? JSB TLYRT YES, GO GET THE CONSTANT LDA FCTPC NO, GET THE 2895 CONSTANT STA MBGTC AND PUT IT IN HOLDER LDA PUSUB GET JSB PUSUB INSTRUCTION STA PIOA6,I LDA PSTIR GET THE ROUNTIN4S ADDRESS STA PULNK AND PLACE IN BASE PAGE LINK .TS12 CLA ZERO THE STA PSICL COUNTER LDA FCTPC GET A NUMBER TO OUTPUT PIOA1 OTA PUNCH OUTPUT BUFFER LDA OSTMC GET THE ONE SECOND CONSTANT STF INTP INTERRUPT SYSTEM ON PIOA2 STC PUNCH,C TELL THE PUNCH TO START, JSB TMRR,I AND CONTINUE TIMING TEST. CLF INTP OFF THE INTERRUPT SYSTEM PIOA3 CLC PUNCH,C OFF PUNCH CONTROL LDA PSICL GET THE INTERRUPT COUNT ADA MBGTC SUBTRACT THE MBGT CONSTANT SSA,RSS IS THE PUNCH SPEED CORRECT? JMP PSEDR YES, OVER ERROR LDA PSICL GET COUNT FOR DISPLAY LDB MBGTC NO, GET THE SHOULD BE VALUE CPB TLYRC WAS THIS A 2753? JSB TLYER YES, REPORT ERROR JSB FCTER NO, REPORT 2895 ERROR. JSB LPCHK BIT 7=1? JMP .TS12 YES, LOOP JMP TST12,I EXIT PSEDR JSB MSGC,I REPORT SUCESSFUL SPEED TEST DEF PSEND JSB LPCHK CHECK FOR LOOP JMP .TS12 YES, LOOP UNTIL BIT7 IS CLEARED JMP TST12,I EXIT * BIT06 OCT 100 FCTPC DEC -74 PUSUB JSB PULNK,I PIOA6 OCT 0 PSTIR DEF PSTIH PSICL OCT 0 TLYRC DEC -119 PTR12 DEF BUF5 SKP TLYRT NOP LDA TLYRC GET 2753 TIME CONSTANT ISZ TLYRT OVER THE 2895 CONSTANT JMP TLYRT,I AND RETURN SPC 2 PSTIH NOP ISZ PSICL INCREMENT THE PUINT COUNTER PIOA7 OTA PUNCH PIOA4 STC PUNCH,C HIT THE PUNCH WITH ANOTHER GO JMP PSTIH,I AND BACK TO TIMER. SPC 2 TLYER NOP CMB,INB MAKE B A POSITIVE NUMBER JSB ERMS,I REPORT THE PUNCH IS DEF TLYEM TO SLOW ISZ TLYER GO PAST THE 2895 ERROR JMP TLYER,I AND EXIT. SPC 2 FCTER NOP CMB,INB MAKE B POSITIVE JSB ERMS,I REPORT 2895 OPERATION DEF FCTEM WAS TOO SLOW JMP FCTER,I EXIT SPC 2 LPCHK NOP LDB BIT07 IS BIT 7 A ONE? JSB SWRT,I IF SO, JMP LPCHK,I LOOP ISZ LPCHK IF NOT, JMP LPCHK,I EXIT * BIT07 OCT 200 P12AD OCT 0 HED 2753 STATUS TEST * * TST13 * * TEST 13 IS THE 2753 HIGH SPEED PUNCH STATUS TEST. IT CONSISTS * OF A ONE BIT CHECK. THE OPERATOR IS TOLD TO REMOVE THE TAPE * SUPPLY REEL TO FORCE AN ERROR. WHEN RUN IS PUSHED, BIT 5 * FROM THE PUNCH INTERFACE IS CHECKED TO INSURE THE ABILITY OF * THE INTERFACE DTTECTING A LOW SUPPLY REEL CONDITION. THE * OPERATOR IS THEN INSTRUCTED TO REINSTALL THE SUPPLY REEL, AND * WHEN RUN IS PRESSED, THE BIT 5 IS TESTED FOR A ZERO CONDITION * AND THE TEST IS EXITED. * * * * * * * * * SKP TST13 EQU * SPC 1 NOP JSB PSCHK WANT TO RUN TEST? JSB MSGH,I INSTRUCT THE OPERATOR TO REMOVE DEF TST1H PIOA5 LIB PUNCH GET THE PUNCH STATUS CPB BIT05 LOW TAPE STATUS? JMP *+3 YES, OVER THE ERROR JSB ERMS,I NO, TELL THE OPERATOR DEF T13EM ABOUT THE PROBLEM JSB MSGH,I INSTRUCT THE OPERATOR TO REPLACE DEF TSTH2 THE SUPPLY REEL. PIOA8 LIB PUNCH SZB,RSS JMP *+3 YES, OVER THE RERRER JSB ERMS,I NO, INFORM THE OPERATOR DEF T13EN OF THE PROBLEM JSB MSGC,I ANNOUNCE A SUCESSFUL TEST DEF TSTH3 TO THE OPERATOR JMP TST13,I AND EXIT SPC 5 * TST1H ASC 16,H104 2753 HIGH SPEED TAPE PUNCH ASC 6,STATUS CHECK OCT 6412 ASC 17, REMOVE SUPPLY REEL, PRESS RUN OCT 3457 BELL AND SLASH * T13EM ASC 18,E105 DID NOT DETECT LOW TAPE STATUS/ * T13EN ASC 17,E106 REPLACING SUPPLY REEL DID NOT ASC 7, CLEAR STATUS/ * TSTH2 ASC 18,H107 REPLACE SUPPLY REEL, PRESS RUN/ * TSTH3 ASC 14,H110 STATUS CHECK COMPLETE/ * * * HED 2895 MANUAL FUNCTIONS TEST * * TST14 * * TEST 14 IS A TEST OF THE MANUAL FUNCTIONS OF THE 2895 PUNCH. * THERE ARE EIGHT FUNCTIONS TO BE TESTED. EACH TEST IS STARTED * BY AN INSTRUCTION MESSAGE, TELLING THE OPERATOR WHAT TO DO. * * 'PRESS RUN' IN THE MESSAGES, REFERS TO THE COMPUTER RUN * SWITCH. * * THE EIGHT FUNCTIONS ARE: * * 1 POWER ON SWITCH. * * 2 DC ON SWITCH * * 3 TAPE FEED SWITCH * * 4 FEED HOLE SWITCH * * 5 CODE HOLE SWITCH * * 6 LOW TAPE SWITCH/INDICATOR * * 7 LOOSE TENSION ARM/ERROR INDICATOR * * 8 TIGHT TENSION ARM/ERROR INDICATOR * * * * * SKP TST14 EQU * SPC 1 NOP JSB PSCHK WANT TO RUN TEST? JSB MSGC,I TITLE DEF T14M1 MESSAGE JSB MSGH,I POWER ON SWITCH DEF TFPOM MESSAGE JSB MSGH,I DC ON SWITCH DEF TFDCM MESSAGE JSB MSGH,I TAPE FEED SWITCH DEF TFTFM MESSAGE JSB MSGH,I DEF TFFHM JSB MSGH,I CODE HOLE SWITCH DEF TFCHM MSG JSB MSGH,I REMOVE REEL DEF TFFRM JSB MSGH,I REPLACE REEL DEF TFRPM MSG JSB MSGH,I TENSION ARM LET DEF TFLEM MESSAGE. JSB MSGC,I COMPLETE DEF TFICM MESSAGE NOP JMP TST14,I EXIT THE BMC SPECIAL TEST SKP * * T14M1 ASC 16,H111 2895 MANUAL FUNCTIONS TEST/ * TFPOM ASC 16,H112 PRESS 'POWER ON'-PRESS RUN OCT 3457 BELL AND SLASH * TFDCM ASC 17,H113 PRESS 'DC ON', 'READY' SHOULD ASC 11, ILLUMINATE. PRESS RUN OCT 3457 BELL AND SLASH * TFTFM ASC 18,H114 PRESS 'TAPE FEED', SHOULD FEED ASC 11,BLANK TAPE. PRESS RUN OCT 3457 BELL AND SLASH * TFFHM ASC 18,H115 PRESS 'FEED HOLD'. SHOULD FEED ASC 16,TAPE WITH FEED HOLES. PRESS RUN OCT 3457 BELL AND SLASH * TFCHM ASC 18,H116 PRESS 'CODE HOLE'. SHOULD FEED ASC 15,FULLY PUNCHED TAPE. PRESS RUN OCT 3457 BELL AND SLASH * TFFRM ASC 17,H117 REMOVE THE TAPE SUPPLY REEL. ASC 5,PRESS RUN OCT 3457 BELL AND SLASH * TFRPM ASC 15,H120 TAPE LOW INDICATOR SHOULD ASC 16, BE ILLUMINATED. REPLACE SUPPLY OCT 6412 ASC 9, REEL. PRESS RUN OCT 3457 BELL AND SLASH * TFLEM ASC 13,H121 MOVE THE TAPE TENSION ASC 15, ARM TO MAXIMUM RIGHT AND LEFT OCT 6412 ASC 15, THE ERROR INDICATOR SHOULD ASC 15,ILLUMINATE AT THE TWO MAXIMUM OCT 6412 ASC 17, POSITIONS, AND BE EXTINGUISHED ASC 11,IN THE CENTER-PUSH RUN OCT 3457 BELL AND SLASH * TFICM ASC 18,H122 MANUAL FUNCTIONS TEST COMPLETE/ * * * HED SUBROUTINE 50/60 HZ FOR PAPER TAPE READER TEST * * THIS ROUTINE SETS UP THE CHARACTER COUNTERS * FOR OPERATION OF THE 2748/58 AND 2737 * PAPER TAPE READERS * THE CHARACTER COUNTERS WILL BE SET DIFFERENTLY * WHETHER THE READERS ARE OPERATED AT * ************* 50HZ OR 60HZ ******************** * * * ZFREQ NOP UPDATE POINTER ROUTINE LDA USSC IS IT 50HZ OR 60HZ ? SSA,RSS JMP *+7 GO TO 60HZ OPERATION * * * OPERATION AT 50HZ * * LDA HPRDD GET THE 415 CPS CONSTANT STA HPR1,I SAVE IT IN HPRDC LDA RXRDE GET THE 250 CPS CONSTANT STA RXR1,I SAVE IT IN RXRDC LDA SAVA,I RESTORE THE A REGISTER JMP ZFREQ,I RETURN TO MAIN PROGRAM * * * OPERATION AT 60HZ * * LDA HPRDE GET THE 500 CPS CONSTANT STA HPR1,I SAVE IT IN HPRDC LDA RXRDF GET THE 300 CPS CONSTANT STA RXR1,I SAVE IT IN RXRDC LDA SAVA,I RESTORE THE A REGISTER JMP ZFREQ,I RETURN TO MAIN PROGRAM * * HPRDE DEC -498 500 CPS CONSTANT HPRDD DEC -413 415 CPS CONSTANT RXRDE DEC -248 250 CPS CONSTANT RXRDF DEC -298 300 CPS CONSTANT RXR1 DEF RXRDC 2737 CPS CONSTANT IN TEST 11 HPR1 DEF HPRDC 2748-58 CPS CONSTANT IN TEST 11 SAVA DEF ZSAVA SPC 3 FWAA EQU * SPC 3 END