ASMB,A,B,L,C HED GENERAL OPERATING PROCEDURE ORG 0 SUP * GENERAL OPERATING PROCEDURE * * A. LOAD DIAGNOSTIC CONFIGURATOR AND SET IT UP. * B. LOAD DIAGNOSTIC MAIN PROGRAM * C. LOAD ADDRESS 100B. * D. SKIP * E. SKIP * F. LOAD SWITCH REGISTER * IF SET =: * 15 = HALT AT END OF EACH TEST * 14 = SUPRESS ERROR HALTS * 13 = LOOP ON LAST TEST * 12 = LOOP ON DIAGNOSTIC * (SUPPRESS ALL OPERATOR INTERVENTION) * 11 = SUPRESS ERROR MESSAGES * 10 = SUPRESS NON-ERROR MESSAGES * 9 = GO TO USER CONTROL SECTION * AT END OF PRESENT TEST * 8= SUPPRESS OPERATOR INTERVENTION TESTS * 7 * = RESERVED * 0 * NOTE: STANDARD RUN SHOULD BE WITH SW. REG. = 0 * USER CONTROL WILL ASK FOR A 32 BIT WORD. * EACH BIT WILL = 1 TEST * * G. PRESS RUN. * H. RESTART - LOAD ADDRESS 2000B * I. RECONFIGURE IF TESTING I/O INTERFACE - LOAD ADDRESS 100B * * GENERAL COMPUTER HALTS * * 1020XX E OR H 000 TO 067 * 1060XX E OR H 100 TO 167 * 1030XX E OR H 200 TO 267 * 1070XX E OR H 300 TO 367 * * CONTROL PROGRAM HALT MESSAGES * * 102077 END OF DIAG (A = PASS COUNT) * 102076 END OF TEST (A = TEST #) * 102075 USER SELECTION REQUEST * 102074 SELECT CODE INPUT COMPLETE * 102073 USER SELECT CODE ERROR * 102072 RESERVED * 102071 RESERVED * 102070 RESERVED * * 106077 TRAP CELL HALT * * * HED PROGRAM ORGANIZATION CHART * ******************************************* * * CONFIGURATOR 100B * * * LINKAGE TABLE * * ******************************************* * * EXECUTIVE 130B * * * LINKAGE * * ******************************************* * * CONSTANTS 150B * * * AND * * * STORAGE * * ******************************************* * * 2000B * * * EXECUTIVE CONTROL * * * * * ******************************************* * * IF USED * * * BASIC I/O TESTS (TEST 00) * * * ZCEND * * ******************************************* * * TABLE OF TEST POINTERS * * * TABLE OF I/O INSTR POINTERS * * ******************************************* * * * * * * * * * * * * * * * * * MAIN DIAGNOSTICS (1-31) * * * * * * * * * * * * * * * * * ******************************************* * * * * * * * * * * * * * * * * * * * * HED CONFIGURATOR LINKAGE TABLE A EQU 0 A REGISTER REFERENCE B EQU 1 B REGISTER REFERENCE SW EQU 1 SWITCH REGISTER REFERENCE INTP EQU 0 INTERRUPT CHANNEL REFERENCE * * ORG 100B * JMP STRT,I GO START PROGRAM FAIN BSS 1 FAST INPUT (PHOTO READER) SLOP BSS 1 SLOW OUTPUT (LIST) FAOP BSS 1 FAST OUTPUT (DUMP OR PUNCH) SLIN BSS 1 SLOW INPUT (KEYBOARD) FWAM DEF FWAA FIRST WORD OF AVBL. MEMORY LWAM BSS 1 LAST WORD OF AVBL. MEMORY BSS 1 NOT USED (MAG TAPE) OTMC BSS 1 1 MILL SEC TIME OUT COUNT BSS 4 SELECT CODES FOR I/O CPTO BSS 1 COMPUTER TYPE/OPTIONS USSC NOP USER CARD TYPE AND SELECT CODE MEMO BSS 1 MEMORY SIZE AND TYPE ISWR BSS 1 INTERNAL SWITCH REGISTER TMRR BSS 1 1 MILL SEC TIMER SWRC BSS 1 CONFIGURATOR SWITCH CK PTR I2AS BSS 1 INTEGER TO ASCII CONVERSION O2AS BSS 1 OCTAL TO ASCII CONVERSION AS2N BSS 1 ASCII CONVERSION DSN OCT 101011 DIAGNOSTIC SERIAL NUMBER FMTR BSS 1 FORMATTER * * * CONTROL LINKAGE AND DATA REFERENCES * CFIG DEF ZCONF CONFIGURATION SECTION MSGC DEF ZMSGC MESSAGE WITH NO HALT MSGH DEF ZMSGH MESSAGE WITH HALT ERMS DEF ZERMS ERROR MESSAGE SWRT DEF ZSWRT SWITCH REGISTER CHECK ROUTINE TSTN OCT 0 CURRENT TEST NUMBER EXRT DEF ZEXRT RETURN TO CONTROL PROGRAM NOP RESERVED * * * * * * * * * * * * * SKP ORG 140B IOIP DEF IODP TSTP DEF TSTD HDMP DEF HDMS STDA OCT 7777 STDB OCT 0 HED EIG DIAGNOSTIC - CONSTANTS ORG 150B IODP EQU * DEC -1 TSTD EQU * DEF TST00 DEF TST01 DEF TST02 DEF TST03 DEF TST04 DEF TST05 DEF TST06 DEF TST07 DEF TST10 DEF TST11 DEF TST12 DEF TST13 DEC -1 ORG 200B AACT OCT 0 AEXP OCT 0 BACT OCT 0 BEXP OCT 0 XACT OCT 0 XEXP OCT 0 YACT OCT 0 YEXP OCT 0 MACT OCT 0 MEXP OCT 0 OEACT OCT 0 EEACT OCT 0 HDMS ASC 12, EIG (INDEX) DIAGNOSTIC/ STRT OCT 2000 SKP * TEST SEQUENCES * * TEST * * SUBTST 1 2 3 4 * * LDA LDA LDB LDB * 0 CAX CAY CBX CBY * STX STY STX STY * * LDX LDY LDX LDY * 1 CXA CYA CXB CYB * STA STA STB STB * * LDX LDY LDX LDY * 2 XAX XAY XBX XBY * STX STY STX STY * * LDX LDY LDX LDY * 3 ISX ISY DSX DSY * STX STY STK STY * * LDX LDY LDX LDY * 4 ADX +N ADY +N ADX -N ADY -N * STX STY STX STY * * LDX LDY LDX LDY * 5 LAX LAY LBX LBY * STA STA STB STB * * LDA LDA LDB LDB * 6 LDX LDY LDX LDY * SAX SAY SBX SBY * * JLY JLY I(2) LDY * 7 STY STY JPY * * 8 LDX A LDX B STX A STX B * * 9 LAX M,I(1) LAY M,I(2)LDX M,I(3)LDX A,I(1) * * 10 SAX MP SAY MP STX MP STY MP * * 11 JLY MP JPY MP * * * N = 52525 * M = MEMORY * I = INDIRECT * MP = MEMORY PROTECT * * * * SKP ZCONF EQU * MP EQU 5B BT15 OCT 100000 MPBT OCT 40 OP1 OCT 52525 OP2 OCT 125252 DM1 DEC -1 CT DEC -10000 LOCS OCT 0 B2 OCT 2 B4 OCT 4 B6 OCT 6 B7 OCT 7 D10 DEC 10 ECSV1 OCT 0 ERFLG OCT 0 BPFLG OCT 0 MFLG OCT 0 YFLG OCT 0 BUFS OCT 0 TPSV OCT 0 CTSV OCT 0 ECSV OCT 0 FPPS OCT 0 SPPS OCT 0 ASV OCT 0 BSV OCT 0 OPTS1 DEF *+1 OPTS BSS 40 OPTP1 DEF OPT1 OPT1 OCT 0 OCT 1 OCT 2 OCT 4 OCT 10 OCT 20 OCT 40 OCT 100 OCT 200 OCT 400 OCT 1000 OCT 2000 OCT 4000 OCT 10000 OCT 20000 OCT 40000 OCT 100000 OCT 177776 OCT 177775 OCT 177773 OCT 177767 OCT 177757 OCT 177737 OCT 177677 OCT 177577 OCT 177377 OCT 176777 OCT 175777 OCT 173777 OCT 167777 OCT 157777 OCT 137777 OCT 77777 OCT 177777 OTE1 DEF * SKP FPP DEF AACT OSV OCT 0 ESV OCT 0 OPP1 DEF OPTP1,I OPP2 DEF OPP1,I JMP1 JMP JP1P,I JMP2 JMP JP2P,I JMP3 JMP JP3P,I JP1P DEF JP1R JP2P DEF JP2R JP3P DEF JP3R EC11 OCT 70300 EC12 OCT 72340 EC13 OCT 70401 EC14 OCT 72441 EC21 OCT 04526 EC22 OCT 04627 EC23 OCT 06566 EC24 OCT 06667 EC31 OCT 71426 EC32 OCT 73467 EC33 OCT 71526 EC34 OCT 73567 EC41 OCT 71026 EC42 OCT 73067 EC43 OCT 70726 EC44 OCT 72767 EC51 OCT 70226 EC52 OCT 72267 EC53 OCT 70226 EC54 OCT 72267 EC61 OCT 05126 EC62 OCT 05167 EC63 OCT 07226 EC64 OCT 07267 EC71 OCT 75300 EC72 OCT 77340 EC73 OCT 101301 EC74 OCT 103341 EC101 OCT 71300 EC102 OCT 72340 SKP ISMT ASC 02,LDA- 00 00000 ASC 02,LDB- 01 00001 ASC 02,STA- 02 00010 ASC 02,STB- 03 00011 ASC 02,ADX- 04 00100 ASC 02,ADY- 05 00101 ASC 02,CAX- 06 00110 ASC 02,CAY- 07 00111 ASC 02,CBX- 08 01000 ASC 02,CBY- 09 01001 ASC 02,CXA- 10 01010 ASC 02,CXB- 11 01011 ASC 02,CYA- 12 01100 ASC 02,CYB- 13 01101 ASC 02,DSX- 14 01110 ASC 02,DSY- 15 01111 ASC 02,ISX- 16 10000 ASC 02,ISY- 17 10001 ASC 02,LAX- 18 10010 ASC 02,LAY- 19 10011 ASC 02,LBX- 20 10100 ASC 02,LBY- 21 10101 ASC 02,LDX- 22 10110 ASC 02,LDY- 23 10111 ASC 02,XAX- 24 11000 ASC 02,XAY- 25 11001 ASC 02,XBX- 26 11010 ASC 02,XBY- 27 11011 ASC 02,STX- 28 11100 ASC 02,STY- 29 11101 ASC 02,SAX- 30 11110 ASC 02,SAY- 31 11111 ASC 02,SBX- 32 10000 ASC 02,SBY- 33 10001 SKP SPP DEF *+1 AAP DEF AS+1 AEP DEF AS+5 BAP DEF BS+1 BEP DEF BS+5 XAP DEF XS+1 XEP DEF XS+5 YAP DEF YS+1 YEP DEF YS+5 MAP DEF MS MEP DEF MS+4 EPP DEF * MS030 ASC 12,E030 AAA-BBB-CCC-ERROR OCT 6412 ASC 06,REG-ACT-EXP OCT 6412 AS ASC 10,A AAAAAA AAAAAA BS ASC 10,B BBBBBB BBBBBB OCT 6412 XS ASC 10,X XXXXXX XXXXXX YS ASC 10,Y YYYYYY YYYYYY OCT 6412 MTRM ASC 01,/ MS ASC 07,MMMMMM MMMMMM OCT 6412 SLCH ASC 01,/ MCH ASC 01,M MS031 ASC 13,E031 OVERFLOW-EXTEND ERROR OCT 6412 ASC 06,REG-ACT-EXP OCT 6412 OES ASC 08,OV XX EX XX/ HED EIG DIAGNOSTIC - SUBROUTINES RCK01 NOP STA AACT SAVE ACT A STB BACT SAVE ACT B LDA YFLG SZA TEST FOR FLAG SET JMP RC00 YES LDA BPFLG LOAD BYPASS FLAG SZA,RSS IS IT SET ? JMP X01 CLA STA YACT CLEAR ACT STA YEXP CLEAR EXP JMP ECK CHECK FOR ERROR FLAG SET X01 STY YACT SAVE Y NOP DANGER DO NOT REMOVE JMP ECK CHECK FOR ERROR FLAG SET RC00 LDA BPFLG SZA,RSS IS IT SET ? JMP Y01 CLA STA XACT CLEAR ACT STA XEXP CLEAR EXP JMP ECK CHECK FOR ERROR FLAG SET Y01 STX XACT SAVE X NOP DANGER DO NOT REMOVE ECK LDA ERFLG LOAD ERROR FLAG SZA IS FLAG SET ? JMP RC11-1 YES MCK LDB MFLG LOAD MEM CHECK FLAG SZB,RSS IS IT SET ? JMP ATST NO * MTST LDB MACT LOAD ACT M CPB MEXP TEST M JMP ATST OK JSB RPER REPORT ERROR IN M JMP RC11 CONTINUE * ATST LDA AACT LOAD A CPA AEXP TEST A JMP BTST OK JSB RPER1 REPORT ERROR IN A JMP RC11 GO TO NEXT TEST CASE * BTST LDB BACT LOAD B CPB BEXP TEST B JMP XTST OK JSB RPER1 REPORT ERROR IN B JMP RC11 GO TO NXT TST CASE * XTST LDA XACT LOAD X CPA XEXP TEST X JMP YTST OK JSB RPER1 REPORT ERROR IN X JMP RC11 CONTINUE * YTST LDA YACT LOAD Y CPA YEXP Y JMP RC11 * JSB RPER1 REPORT ERROR IN Y JMP RC11 CONTINUE * JSB RPER1 REPORT ERROR RC11 ISZ TPSV BUMP TST CASE PTR LDA TPSV CPA OTE1 LAST TST CASE ? RCEX1 ISZ RCK01 MOVE RTN PT CLA CLEAR STA ERFLG ERROR FLAG LDA AACT NO, RELOAD A,B LDB BACT JMP RCK01,I EXIT STS OCT 0 ST1 OCT 20 ST2 OCT 40 ST3 OCT 60 ST4 OCT 100 SKP RPOEE NOP STA ASV SAVE A STB BSV SAVE B CCA SET STA ERFLG ERROR FLAG LDA OEACT FORM AND D1 IOR B60 ASCII STA TMP LDA OEACT FOR RAL AND D1 O IOR B60 ERROR ALF,ALF IOR TMP MESSAGE ALF,ALF POSITION ACT-EXP STA OAP,I LDA EEACT FORM AND D1 ASCII IOR B60 FOR STA TMP E LDA EEACT ERROR RAL AND D1 MESSAGE IOR B60 ALF,ALF IOR TMP ALF,ALF POSITION ACT-EXP STA EMP,I LDA TSTN LOAD TEST NO IOR STS OR IN SUBTEST NO E031 JSB ERMS,I REPORT ERROR DEF MS031 LDA ASV RELOAD A LDB BSV RELOAD B JMP RPOEE,I EXIT TMP OCT 0 D1 OCT 1 OAP DEF OES+2 EMP DEF OES+6 B60 OCT 60 SKP RPER NOP LDA MCH ADD MSG STA MTRM LINK JSB ERRP REPORT ERROR JMP RPER,I EXIT SPC 2 RPER1 NOP LDA SLCH ADD MSG STA MTRM TERMINATOR JSB ERRP REPORT ERROR JMP RPER1,I EXIT SPC 2 ERRP NOP JSB SIS INSERT SEQUENCE IN MESSAGE JSB CAID CONVERT AND INSERT DATA LDA TSTN LOAD TEST NO IOR STS OR IN SUBTEST NO E030 JSB ERMS,I REPORT ERROR DEF MS030 JMP ERRP,I EXIT SPC 2 SIS NOP LDA ISMP INITIALIZE STA ISMPS PTR TO FIRST MSG LDA ECSV LOAD ERROR CODE AND B37 MASK OFF CODE JSB MMSG CONVERT AND STORE 1 ST INSTR LDA ECSV RELOAD ERROR CODE RAR,ALF POSITION ALF,ALF NEXT CODE AND B37 MASK OFF CODE JSB MMSG CONVERT AND STORE 2 ND INSTR LDA ECSV RELOAD ERROR CODE ALF POSITION RAL,RAL LAST CODE AND B77 MASK OFF CODE JSB MMSG CONVERT AND STORE 3 RD INSTR JMP SIS,I EXIT SPC 2 MMSG NOP RAL MULTIPLY BY 2 ADA ISP ADD TABLE ENTRY POINT LDB A,I LOAD 1ST CHAR STB ISMPS,I STORE IN MSG INA BUMP ISZ ISMPS POINTERS LDB A,I LOAD 2ND CHAR STB ISMPS,I STORE IN MSG ISZ ISMPS MOVE POINTER JMP MMSG,I EXIT ISMPS OCT 0 ISMP DEF MS030+3 ISP DEF ISMT B37 OCT 37 B77 OCT 77 SKP CAID NOP LDA FPP LOAD OPERAND POINTER STA FPPS LDA SPP LOAD POINTER TO MSG STRING STA SPPS CLP CLE SET LDA FPPS,I UP LDB SPPS,I CONVERSION JSB O2AS,I ROUTINE ISZ FPPS BUMP NEXT OPERAND ISZ SPPS BUMP DESTINATION POINT LDA SPPS TEST CPA EPP FOR LAST OPERAND JMP CAID,I YES JMP CLP NO, CONTINUE SKP EOSV NOP STA ASV SAVE A ERA SAVE AND BT15 STA ESV E STA EEACT LDA BT15 SOS TEST FOR CLA O STA OSV SET/CLEAR STA OEACT CLO CLEAR E CLE O LDA ASV RESTORE A JMP EOSV,I EXIT SPC 2 EOCK NOP STA ASV SAVE A STB BSV SAVE B ERA TEST AND BT15 E LDB A SAVE A RAL POSITION BIT IOR EEACT ADD IN EXP VALUE STA EEACT SAVE EXP/ACT E LDA B RESTORE A CPA ESV JMP OCK OK JMP EOE ERROR OCK LDA BT15 SOS TEST FOR CLA O RAL POSITION BIT IOR OEACT ADD IN EXP VALUE STA OEACT SAVE EXP/ACT O LDA BT15 SOS TEST FOR CLA O CPA OSV JMP EOE+1 OK LDA ASV RESTORE A LDB BSV RESTORE B EOE JSB RPOEE REPORT O/E ERROR LDA ASV RESTORE A LDB BSV RELOAD B JMP EOCK,I EXIT SKP RSEI NOP STA ASV SAVE A STB BSV SAVE B LDA ERFLG LOAD FLAG SZA,RSS IS IT SET ? JMP END EXIT LDA ERFLG TEST CPA B2 FOR WHICH MSG TO USE JMP RSED LDA ISE NO ADA ECSV1 FORM LDB A,I MSG STB MS032+2 FOR INA OUTPUT LDB A,I STB MS032+3 LDA TSTN LOAD TEST NO IOR STS OR IN SUBTEST NO E032 JSB ERMS,I REPORT ERROR DEF MS032 JMP END EXIT RSED LDA ISE ADA ECSV1 FORM LDB A,I MSG STB MS033+2 FOR INA OUTPUT LDB A,I STB MS033+3 LDA TSTN LOAD TEST NO IOR STS OR IN SUBTEST NO E033 JSB ERMS,I REPORT ERROR DEF MS033 END LDA ASV RESTORE A LDB BSV RESTORE B JMP RSEI,I EXIT ISE DEF ISET ISET ASC 02, ISX ASC 02, ISY ASC 02, DSX ASC 02, DSY MS032 ASC 15,E032 ISX INSTR FAILED TO SKIP/ MS033 ASC 19,E033 ISX INSTR SKIP'D BUT SHOULD NOT/ SKP SKP1 NOP STA ASV SAVE A STB BSV LDA SKP1 MOVE STA SKXY RTN POINT LDA XEXP LOAD SKP INDICATOR JMP SKXY+1 SPC 2 SKP2 NOP STA ASV SAVE A STB BSV SAVE B LDA SKP2 MOVE STA SKXY RTN POINT LDA YEXP LOAD SKP INDICATOR JMP SKXY+1 SPC 2 SKXY NOP CCB SZA TEST FOR SKP CORRECT CLB STB ERFLG INITIALIZE FLAG LDA ASV RESTORE A LDB BSV B ISZ SKXY MOVE RTN POINT JMP SKXY,I EXIT SPC 2 SKP11 NOP STA ASV SAVE A STB BSV SAVE B LDA SKP11 MOVE STA SKXY1 RTN POINT LDA XEXP LOAD SKP INDICATOR JMP SKXY1+1 SPC 2 SKP21 NOP STA ASV SAVE A STB BSV SAVE B LDA SKP21 MOVE STA SKXY1 RTN POINT LDA YEXP LOAD SKP INDICATOR JMP SKXY1+1 SPC 2 SKXY1 NOP LDB B2 SZA,RSS TEST FOR SKP CORRECT CLB STB ERFLG INITIALIZE FLAG LDA ASV RESTORE A LDB BSV B JMP SKXY1,I EXIT SKP RCK02 NOP STA AACT SAVE A STB BACT B STX XACT X NOP DANGER DO NOT REMOVE STY YACT Y NOP DANGER DO NOT REMOVE CPA AEXP TEST A JMP RCK02,I OK JSB RPIE REPORT INDIRECT ERROR JMP RCK02,I EXIT SPC 2 RCK03 NOP STA AACT SAVE A STB BACT B STX XACT X NOP DANGER DO NOT REMOVE STY YACT Y NOP DANGER DO NOT REMOVE LDA XACT CPA XEXP TEST X RESULTS JMP RCK03,I EXIT JSB RPIE REPORT INDIRECT ERROR JMP RCK03,I EXIT SPC 2 RPIE NOP LDA TSTN LOAD TEST NO IOR STS OR IN SUBTEST NO E040 JSB ERMS,I REPORT ERROR DEF MS040 JMP RPIE,I EXIT LAXM ASC 01,AX LAYM ASC 01,AY LDXM ASC 01,DX MS040 ASC 13,E040 LAX INDIRECT FAILED/ SKP