E054 JSB ERMS,I IT WASN'T REPORT ERROR DEF STE2 JSB CDSTC GO CHECK STATUS OCT 110000 INDICATS ALL READY * * ISZ STPNO SET STEP 7 H104 JSB MSGH,I TELL OPERATOR TO DEF STM5 EXTEND STACKER ARM AND HOLD JSB CDSTC GO CHECK STATUS OCT 110141 * ññ * ññ ISZ STPNO SET STEP 10 STS05 STC CR,C GIVE PICK COMMAND STS06 CLC CR,C NOW CLC TO CLEAR PICK JSB CDSTC GO CHECK STATUS OCT 010141 BIT 8 = 0 * * ññ ISZ STPNO SET STEP 11 H105 JSB MSGH,I TELL OPERATOR TO DEF STM6 START CR PRESS RUN JSB CDSTC GO CHECK STATUS OCT 010000 ALL READY * * ISZ STPNO SET STEP 12 JSB STRD READ A CARD RSS AND SKIP AN LIA JSB CDSTC GO CHECK STATUS OCT 110012 TROUBLE + LOST DATA * * JSB STRD READ A CARD STS07 OTA CR AND DO AN OTA JSB CDSTC GO CHECK STATUS OCT 110012 TROUBLE + LOST DATA SKP Pl ISZ STPNO SET STEP 13 H106 JSB MSGH,I TELL OPERATOR TO DEF STM7 PRESS END OF FILE JSB STRD READ A CARD NOP JSB CDSTC GO CHECK STATUS OCT 110241 BIT 7+5=1 * * ISZ STPNO SET STEP 14 H107 JSB MSGH,I TELL OPERATOR TO DEF STM8 LOAD SHORT CARD AND TWO LONG JSB CDSTC GO CHECK STATUS OCT 110000 ALL READY * * ISZ STPNO SET STEP 15 STS08 STC CR,C PICK CARD LDA D1000 JSB WFI WAIT FOR FIRST INTERRUPT NOP CLC INTP OUTPUT CRS JSB CDSTC GO CHECK STATUS OCT 110001 LDA D1000 JSB TMRR,I GO WAIT * ññ * ISZ STPNO SET STEP 16 6ú JSB STRD READ NEXT CARD NOP JSB CDSTC GO CHECK STATUS OCT 114043 * ññ * ññ ISZ STPNO SET STEP 17 H110 JSB MSGH,I TELL OPERATOR TO DEF STM9 LOAD NOTCHED CARD JSB CDSTC GO CHECK STATUS OCT 110000 ALL READY * * *ñ ISZ STPNO SET STEP 20 JSB STRD READ A CARD NOP JSB CDSTC GO CHECK STATUS OCT 111043 SKP pl ISZ STPNO SET STEP 21 H111 JSB MSGH,I TELL OPERATOR TO DEF STM10 LOAD 2 CARDS TAPED TOGETHER JSB CDSTC GO CHECK STATUS OCT 110000 ALL READY * * ISZ STPNO SET STEP 22 STS09 STC CR,C GIVE PICK COMMAND LDA D1000 JSB TMRR,I WAIT FOR COMPLETION JSB CDSTC GO CHECK STATUS OCT 114003 PICK FAILURE * * JMP STCK,I ALL DONE RETURN TO CALLER * ORG ZCEND * * STM1 ASC 11,H100 TURN CR POWER OFF ASC 11, AND REMOVE ANY CARDS/ * ññ STM2 ASC 11,H101 TURN CR POWER ON/ * *ñ STM3 ASC 11,H102 PUT CR OFF-LINE/ * STM4 ASC 10,H103 PUT CR ON-LINE ASC 08,LOAD THREE CARDS ASC 05, START CR/ * STM5 ASC 17,H104 EXTEND STACKER ARM AND HOLD/ * STM6 ASC 13,H105 RELEASE ARM START CR/ * STM7 ASC 13,H106 PRESS CR END-OF-FILE/ * *ñ STM8 ASC 13,H107 LOAD SHORT CARDS AND ASC 12,TWO LONG CARDS START CR/ * STM9 ASC 11,H110 LOAD NOTCHED CARD ASC 05, START CR/ * STM10 ASC 17,H111 LOAD 2 CARDS HOOKED TOGETHER ASC 05, START CR/ * STE1 ASC 16,H053 FLAG NOT SET OFF-LINE+PICK/ * STE2 ASC 17,H054 FLAG NOT SET OFF-TO-ON LINE/ SKP * TIMING CHECKS * TST02 EQU * * TMG NOP CLC INTP,C CLEAR ALL I/O CLA STA SVA STA SVB BŠ JSB WFIS LDA DM10 SET TO READ TEN CARDS STA CNTR H112 JSB MSGH,I TELL OPERATOR TO DEF TMGM1 LOAD TEN CARDS TMG. JSB CFR CHECK FOR READY JMP TMG,I NO READY RESPONSE LDA DM80 SET FOR EIGHTY COLUMNS STA TMP TMGS1 STC CR,C GIVE PICK COMMAND LDA D1000 ALLOW 1 SEC JSB WFI WAIT FOR INTERRUPT RSS JMP TMG0 TMGS2 LIA CR SSA,RSS EOP? JMP *+4 E056 JSB ERMS,I EOP BUT NO INTERRUPT DEF TMGE1 JMP TMGL E057 JSB ERMS,I NO EOP AFTER PICK DEF TMGE2 JMP TMGL TMG0 ADA D1000 STA SVA SAVE RESULTS ADA DM300 SSA OVER 300MS JMP TMG1 NO CONTINUE TMGS3 OTA CR LIA CR GET DATA AND STATUS SSA EOP? JMP *+4 E061 JSB ERMS,I PICK _INT OVER 300M/S DEF TMGE4 JMP TMGL ALF SSA,RSS JMP E061 E060 JSB ERMS,I PICK FAILURE DEF TMGE3 JMP TMGL SKP TMG1 LIA CR GET DATA SSA,RSS JMP *+4 E063 JSB ERMS,I EOP BEFORE 80 COLUMNS READ DEF TMGE5 JMP TMGL ISZ TMP 80 COLUMNS READ RSS SÆ JMP TMG2 YES LDA D1000 NO WAIT FOR ANOTHER DATA INT JSB WFI JMP E067 TIMED OUT ADA D1000 IOR SVB STA SVB JMP TMG1 TMG2 LDA D1000 WAIT FOR EOP JSB WFI RSS JMP *+4 E065 JSB ERMS,I 80 COLUMNS READ BUT NO EOP DEF TMGE6 JMP TMGL ADA D1000 ADA DM4 4V SSA OVER 4 MILLSEC JMP *+4 4« E066 JSB ERMS,I DATA TO EOP OVER 4 MILL DEF TMGE9 LDA SVA CHECK IF POSSIBLE PICKER TROUBLE ADA DM40 SSA JMP *+3 E062 JSB ERMS,I YES DEF TMGE8 LDA SVB HOW ABOUT BETWEEN DATA SZA,RSS JMP *+3 E064 JSB ERMS,I DEF TMGE7 TMGL ISZ CNTR DONE TEN CARDS? JMP TMG. NO JMP TMG,I YES * E067 JSB ERMS,I INT TIMED OUT DURING READ DEF TMGE0 08 JMP TMGL SKP TMGM1 ASC 18,H112 LOAD TEN CARDS FOR TIMING TEST ASC 07,AND START CR/ * TMGE1 ASC 13,E056 EOP BUT NO INTERRUPT/ TMGE2 ASC 12,E057 NO EOP AFTER PICK/ TMGE3 ASC 09,E060 PICK FAILURE/ TMGE4 ASC 15,E061 PICK TO INT OVER 300 MS/ TMGE5 ASC 15,E062 POSSIBLE PICKER TROUBLE/ TMGE6 ASC 14,E063 EOP BEFORE 80 COLUMNS/ TMGE7 ASC 17,E064 TIME BETWEEN DATA OVER 1 MS/ TMGE8 ASC 14,E065 80 COLUMNS BUT NO EOP/ TMGE9 ASC 14,E066 DATA TO EOP OVER 4 MS/ TMGE0 ASC 15,E067 INT TIME OUT DURING READ/ * DM10 DEC -10 SVA NOP SVB NOP DM40 DEC -40 DM4 DEC -4 DM300 DEC -300 SKP * DATA PATTERN TEST * ññ TST03 EQU * * *ñ DPT NOP H113 JSB MSGH,I TELL OPERATOR TO DEF DPTM1 LOAD 50 CARDS FOR DATA PATTERN TEST CLC INTP,C CLEAR ALL I/O LDA DM50 SET FOR 50 CARDS STA TMP+2 DPT0 JSB CFR CHECK FOR READY JMP DPT,I RETURN TO EXEC JSB R2B READ TO BUFFER JSB DRTC DATA READ TABLE COMPARE DEF DPTT ISZ TMP+2 DONE 50 CARDS? JMP DPT0 NO JMP DPT,I YES RETURN * ññ DPTM1 ASC 18,H113 LOAD 50 CARDS FOR DATA PATTERN ASC 08,CHECK START CR/ * DPTT EQU * OCT 7777 OCT 0 0Ñ OCT 3777 OCT 5777 OCT 6777 OCT 7377 OCT 7577 OCT 767778 OCT 7737 OCT 7757 OCT 7767 OCT 7773 OCT 7775 OCT 7776 OCT 4000,2000,1000 OCT 400,200,100 OCT 40,20,10 OCT 4,2,1 1? OCT 5252,2525,5252,2525 OCT 5252,2525,5252,2525 OCT 5252,2525,5252,2525 OCT 5252,2525 REP 4 OCT 0,0,0,0,0,0,0,0,0,0 SKP * READ RATE * TST04 EQU * * RR NOP H114 JSB MSGH,I TELL OPERATOR TO DEF RRM1 LOAD 50 CARDS FOR READ RATE TEST CLC INTP,C CLEAR ALL I/O JSB CFR CHECK FOR READY JMP RR,I ABORT TEST LDA DM50 SET FOR 50 CARDS STA CNTR LDA D10E4 SET CNT IF TBG STA TMP LDA JSBRI SET CARD READER INTERRUPT RRSI1 STA CR TBG1 RSS NOP = TBG AVAILABLE JSB RRTM SET UP TBG RRS01 STC CR,C GIVE PICK COMMAND LDA D10E4 MAX TIME 10 SEC STF INTP TURN ON INTERRUPTS TBG2 RSS NOP = TBG AVAILABLE JMP RRTBG JSB TMRR,I WAIT FOR CARDS TO BE READ CLF INTP TURN INT OFF E133 JSB ERMS,I TELL OPERATOR OF DEF RRE1 TIME OUT JMP RR,I EXIT TEST * RRTBG CMA,INA MAKE COUNT NEG LDB 110B GET MILL SEC OUNT INB,SZB JMP *-1 ISZ TMP JMP RRTBG+1 JMP E133 * *ñ RRM1 ASC 16,H114 LOAD 50 CARDS FOR READ RATE ASC 07, AND START CR/ * RRE1 ASC 09,E133 CR TIMED OUT/ * D10E4 DEC 10000 SKP RRI NOP CLF INTP TURN OFF INTERRUPTS STA SVA SAVE A REG (B WON'T BE USED) RRIS1 LIA CR GET DATA SSA EOP? JMP *+4 YES LDA SVA NO RETURN TO COUNTER STF INTP JMP RRI,I ISZ CNTR COUNT THE CARD (DONE?) RSS JMP RRCMP YES SLA,RSS STILL READY? JMP *+3 YES E134 JSB ERMS,I TELL OPERATOR DEF RRE2 CR WENT NOT READY LDA SVA RRIS2 STC CR,C PICK NEXT CARD STF INTP JMP RRI,I RRCMP LDA SVA RESTORE NUMBER ADA D5000 DETERMINE CPM STA SVA A = NUMBER OF MILLI SEC SSA FOR 50 CARDS CMA,INA LDB A ALF,RAR *8 RBL,RBL *4 ADA B = *12 CLB ADA DM100 * SSA * JMP *+4 * /100 ADA DM100 * INB * JMP *-4 * LDA SVA SSA,RSS < 600 CMB,INB ADB D600 STB SVA SAVE IT FOR DISPLAY WHEN HALTED TBG3 RSS NOP = TBG AVAILABLE RSS ADB POT SUBTRACT OFF SET IF PROG TIME LDA B LDB DRTBD CONVERT IT FOR MESSAGE CLE JSB I2AS,I LDA DRTA PUT NUMBER IN AND .377 MESSABE IOR USPC STA RRM3 LDA DRTB STA RRM3+1 H115 JSB MSGC,I SHOW OPERATOR DEF RRM2 LDA SVA GET COUNT FOR DISPLAY LDB 112B CHECK IF NO TTY SZB,RSS S  OCT 106015 NO SO HALT JMP RR,I RETURN TO CONTROL * RRE2 ASC 09,E134 CR NOT READY/ * RRM2 ASC 02,H115 5c RRM3 ASC 11,XXXX CARDS PER MINUTE/ * POT DEC -8 D5000 DEC 5000 DM100 DEC -100 D600 DEC 600 .377 OCT 377 USPC OCT 20000 SKP * DMA TRANSFER TEST * *ñ TST05 EQU * * DMA NOP CLC INTP,C CLEAR ALL I/O LDA CPTO CHECK IF THERE IS DMA AVAILABLE RAR,RAR SLA,RSS JMP DMA,I NO ABORT TEST H116 JSB MSGH,I TELL OPERATOR TO DEF DMAM1 LOAD 50 CARDS FOR DMA LDA DM50 SET FOR 50 CARDS STA TMP+2 JSB WFIS SET CR TRAP CELL LDA JSBDM SET DMA TRAP STA 6B * DMAR JSB CFR CHECK FOR READY JMP DMA,I ABORT IF NOT READY LDA USSC GET AND .77 SELECT CODE OTA 6 CLC 2 LDA BFD ADDRESS IOR BIT15 INPUT OTA 2 STC 2 LDA DM85 COUNT OF 85 OTA 2 DMAS1 STC CR,C GIVE PICK COMMAND STC 6,C START DMA LDA D1000 WAIT FOR 1 SEC JSB WFI RSS JMP *+4 E135 JSB ERMS,I TELL OPERATOR DEF DMAE1 DMA TIMED OUT JMP DMA,I LIA 2 CHECK WORD COUNT IOR B16K ADD UPPER BITS TO MAKE IT NEG CPA DM5 5 WORDS LEFT JMP *+3 YES E136 JSB ERMS,I NO THEN ERROR DEF DMAE2 2 DMAS2 LIA CR SSA EOP? JMP *+3 YES OK E137 JSB ERMS,I NO EOP AFTER TRANSFER DEF DMAE3 JSB DRTC COMPARE DATA DEF DPTT WITH STANDARD BUFFER DMAN ISZ TMP+2 DONE 50 CARDS? JMP DMAR NO DO ANOTHER LOOP JMP DMA,I YES EXIT SKP DMAI NOP P CLF INTP TURN OFF INTERRUPTS DMAS3 OTA CR DMAS4 LIA CR LIB 2 E140 JSB ERMS,I DMA COMPLETED BEFOR CR DEF DMAE4 JMP DMAN TRY NEXT CARD * BIT15 OCT 100000 DM85 DEC -85 DM5 DEC -5 B16K OCT 160000 * DMAM1 ASC 16,H116 LOAD 50 CARDS FOR DMA TEST ASC 05,START CR/ DMAE1 ASC 10,E135 DMA TIMED OUT/ DMAE2 ASC 15,E136 DMA TRANSFER COUNT WRONG/ DMAE3 ASC 16,E137 NO EOP AFTER DMA TRANSFER/ DMAE4 ASC 15,E140 DMA COMPLETED BEFORE CR/ SKP ll * SPECIAL DATA TEST (PSEUDO OPDESIGN) * TST06 EQU *  * SDT NOP H117 JSB MSGC,I TELL OPERATOR DEF SDTM1 HE'S IN SPECIAL DATA TEST CLC INTP,C CLEAR ALL I/O JMP SDTH GO TO WAIT SDTL JSB SDTRY CHECK FOR READY (SW1) JSB SDTRD READ A CARD (SW2) JSB SDTCB COMPARE BUFFERS (SW3) JSB SDTLB LIST BUFFER (SW4) JSB SDTDL DELAY (SW5) JSB SDTST REPAORT STATUS (SW6) LDA SVA GET STATUS FOR HALT CLB,INB CHECK FOR LOOP (SW0) JSB SWRT,I JMP SDTL YES SDTH OCT 106017 NO WAIT FOR CHANGES LDB .177 EXIT JSB SWRT,I IF ALL SWITCHES ARE DOWN JMP SDTL NO THEN LOOP JMP SDT,I YES EXIT * .177 OCT 177 SDTM1 ASC 11,H117 PSEUDO OPDESIGN/ SKP SDTRY NOP LDB BIT1 DOES HE WANT TO CHECK FOR READY JSB SWRT,I JMP *+2 –– JMP SDTRY,I NO RETURN JSB CFR YES CHECK FOR READY JMP SDTRY+1 NOT READY TRY AGAIN JMP SDTRY,I YES RETURN * ññ * SDTRD NOP LDB BIT2 READ A CARD? JSB SWRT,I JSB R2B YES JMP SDTRD,I RETURN * * SDTCB NOP LDB BIT3 COMPARE BUFFERS JSB SWRT,I JMP *+2 JMP SDTCB,I NO JSB DRTC YES DEF DPTT STANDARD BUFFER JMP SDTCB,I RETURN * * SDTDL NOP LDA D1000 LDB BIT5 DELAY 1 SEC? JSB SWRT,I JSB TMRR,I YES JMP SDTDL,I RETURN * * ññ SDTST NOP SDTS1 OTA CR DO OTA TO TRANSFER STATUS SDTS2 LIA CR READ STATUS STA SVA SAVE IT LDB BIT6 OUT PUT MESSAGE? JSB SWRT,I JMP *+2 JMP SDTST,I NO CLE LDB SDTM2 CONVERT STATUS TO ASCII JSB O2AS,I H120 JSB MSGC,I DEF *+2 JMP SDTST,I RETURN * ASC 08,H120 STATUS IS SDTSM ASC 04,XXXXXX// SDTM2 DEF SDTSM SKP SDTLB NOP LDA DM20 SET FOR OUTPUT STA CNTR LDA BFD BUFFER PAINTER STA TMP LDB BIT4 JSB SWRT,I JMP *+2 JMP SDTLB,I JSB MSGC,I DEF SDTL0 SDTLL LDB BIT4 CHECK IF HE WANTS A LIST JSB SWRT,I JMP *+2 JMP SDTLB,I NO RETURN LDA 112B CHECK IF THERE IS A CONSLE SZA ? JMP SDTLN YES USE LIST DEVICE LDA DM80 SET TO DO 80 COLUMNS STA CNTR LDA TMP,I GET DATA H121 OCT 1060212O ISZ TMP ISZ CNTR DONE? JMP SDTLL NO JMP SDTLB,I YES SDTLN LDA TMP,I CLE LDB SDTL1 FIRST 20 JSB O2AS,I LDA TMP ADA D20 LDA A,I CLE LDB SDTL2 SECOND 20 JSB O2AS,I LDA TMP ADA D40 LDA A,I CLE LDB SDTL3 THIRD 20 JSB O2AS,I LDA TMP ADA D60 LDA A,I CLE LDB SDTL4 FORTH 20 JSB O2AS,I JSB MSGC,I OUTPUT LINE DEF SDTL5 ISZ TMP ISZ CNTR DONE? JMP SDTLL NO JMP SDTLB,I YES * ññ SKP BIT1 OCT 2 BIT2 OCT 4 BIT3 OCT 10 BIT4 OCT 20 BIT5 OCT 40 BIT6 OCT 100 0Û DM20 DEC -20 0ÿ D20 DEC 20 D40 DEC 40 D60 DEC 60 SDTL1 DEF SDTL5 5ÿ SDTL2 DEF SDTL6 6= SDTL3 DEF SDTL7 SDTL4 DEF SDTL8 SDTL0 ASC 09,H121 BUFFER LIST// SDTL5 ASC 05,XXXXXX SDTL6 ASC 05,XXXXXX SDTL7 ASC 05,XXXXXX SDTL8 ASC 04,XXXXXX// FWAA EQU * * END