T17.4 SZB,RSS B-REG GET ZEROED? JMP ENDIS,I YES.DONE CPB .M1 NO.LEFT UNCHANGED? JMP T17.5 YES.WCS NOT DISABLED JSB ERR36 NO JMP ENDIS,I CAN'T GO ON T17.5 JSB ERRDD WCS NOT DISABLED JMP ENDIS,I CAN'T GO ON HED TST20-WCS ENABLE/DISABLE SCREEN TEST * WITH WCS ENABLED OR DISABLED,A SERIES OF I/O INSTRUCTIONS(NOT * CLF OR STF) TO WCS ARE EXECUTED. WCS IS THEN VERIFIED TO BE * CORRECTLY ENABLED OR DISABLED. * TST20 EQU * EDSCN NOP LDB FLTMD LOAD WCS LDX P1 WITH "RTN INC A A" LDY P1+1 JSB WRITE MICROINSTRUCTION LDA FLOAT SET UP STA M20.1 FLT MACRO STA M20.2 CALLS CLA SAVE CCB THE CAX REGISTERS CBY STF03 STF WCS ENABLE WCS JSB WHANG DO OTHER I/O INSTRUCTIONS CLA ARRANGE CCB REGISTERS M20.1 BSS 1 EXECUTE MACRO CLF04 CLF WCS DISABLE WCS TO ALLOW EIG INSTR. CPA .1 A GET INCREMENTED? JMP T20.1 YES.GO CHECK B SZA NO.A LEFT UNTOUCHED? JMP T20.2 NO CPB .M1 YES.B LEFT UNTOUCHED? JMP T20.3 YES CPB .0 NO.FLT GET EXECUTED? JMP T20.3 YES T20.2 JSB ERR36 BAD EXECUTION JMP EDSCN,I CAN'T GO ON T20.3 JSB ERREE WCS NOT ENABLED JMP EDSCN,I CAN'T GO ON T20.1 CPB .M1 B LEFT UNTOUCHED? JMP T20.4 YES.GO ON SZB,RSS NO.B ZEROED OUT? JMP T20.3 YES JMP T20.2 NO T20.4 JSB WHANG DO OTHER I/O INSTRUCTIONS CLA ARRANGE CCB REGISTERS M20.2 BSS 1 EXECUTE MACRO SZA,RSS A =0? JMP T20.5 YES.GO CHECK B CPA .1 NO.A GET INCREMENTED? JMP T20.6 YES JMP T20.2 NO T20.6 JSB ERRDD WCS NOT DISABLED JMP EDSCN,I CAN'T GO ON T20.5 SZB,RSS B ZEROED OUT? JMP EDSCN,I YES.DONE CPB .M1 B LEFT UNTOUCHED? JMP T20.6 YES JMP T20.2 NO HED TST21-COMMAND STATE ALTERATION TEST * WCS IS LOADED WITH A "RTN INC A A" MICRO- * INSTRUCTION AT A SPECIFIC MAP DESTINATION AND SUBJECTED TO A * SERIES OF OT*'S. THE MICROINSTRUCTION IS THEN ATTEMPTED TO * VERIFY THE MOD # = THE LAST OT*. * ORG 4000B TST21 EQU * CSALT NOP LDB TMOD LOAD WCS WITH LDX RT A "RTN" LDY RT+1 JSB WRITE MICROINSTRUCTION LDA TRA1 LOAD RAM LDB TMOD ADDRESS LDX P1 WITH A "RTN INC A A" LDY P1+1 JSB LOAD1 MICROINSTRUCTION CLC11 CLC WCS PUT WCS IN COMMAND STATE LDA TRA1 RAM ADDRESS LDB TMOD1 OTA14 OTA WCS 1ST OT* OTB11 OTB WCS 2ND OT* CPB TMOD2 DONE OTHER MOD'S? JMP T21.1 YES LDB TMOD2 NO.GO DO IT JMP OTA14 T21.1 LDB TMOD OTA16 OTA WCS OTB13 OTB WCS STF08 STF WCS ENABLE WCS CCA NOW TRY OCT 105140 MACRO SZA,RSS MOD'S ALTERED? JMP CSALT,I NO.DONE LDA TSTN YES.CONVERT TEST JSB QO2AS,I # TO ASCII AND STA PERRC,I STUFF IN MSG ECC LDA TMOD MOD # IN A JSB ERMS,I REPORT DEF ECC ERROR JMP CSALT,I HED TST22-BLOCK PRIORITY TEST * 1. BOTH 512(DECIMAL) WCS RAM DATA BLOCKS ARE SET TO THE SAME * MOD # IN CONTROL MEMORY. * * 2. A MACROINSTRUCTION IS EXECUTED TO VERIFY THE HIGH BLOCK * HAS PRIORITY. * TST22 EQU * BLKPR NOP LDB TMOD3 LOAD WCS WITH A LDX RT RTN LDY RT+1 MICROINSTRUCTION JSB WRITE LDA TRA2 LOAD RAM ADDRESS LDB TMOD3 WITH A "RTN INC A A" LDX P1 MICROINSTRUCTION LDY P1+1 AND SET UP FOR BOTH JSB LOAD1 BLOCKS TO BE THE SAME MOD'S CCA ARRANGE CCB REGISTERS STF09 STF WCS ENABLE WCS OCT 105140 EXECUTE MACRO SZA,RSS A GET INCREMENTED? JMP T22.1 YES.GO CHECK B-REG T22.2 JSB ERMS,I NO.REPORT DEF E022 ERROR JMP BLKPR,I T22.1 INB,SZB B LEFT UNTOUCHED? JMP T22.2 NO.ERROR JMP BLKPR,I YES.DONE HED TST23-RAM DATA TEST * WCS IS LOADED WITH A 3 MICROINSTRUCTION TEST MICROPROGRAM * WHICH IS "MOVED" THRU THE ENTIRE RAM STORAGE AND EXECUTED IN * EACH RAM LOCATION. THE TEST MICROPROGRAM CONSISTS OF THE * TEST MICROINSTRUCTION, PRECEDED BY A "PASS"(MICRO-NOP) AND * FOLLOWED BY A "RTN DEC A A " MICROINSTRUCTION. THE CENTER * TEST MICROINSTRUCTION IS VARIED AS FOLLOWS: * * ADDRESS MICROCODE * * 0000 * TO PASS * CTRA CENTER TEST MICROINSTRUCTION * (SEE BELOW) * CTRA+1 * TO RTN DEC A A * 1777 ******************************************************************** * TEST PASS CENTER TEST CENTER TEST* * NO. THRU MICROINSTRUCTION MICROINSTR.* * WCS MICROCODE NUMBER * * * * 1ST ENVE INC X X 1 * * 2ND R1 PASS B Y 2 * * 3RD IMM L4 CMLO Y 0 3 * * 4TH PASS A B 4 * ******************************************************************** * TST23 EQU * RDATA NOP LDA PTEST INITIALIZE CENTER TEST STA SAVE4 MICROINSTRUCTION POINTER CLA INITIALIZE CENTER TEST T23.6 STA SAVE5 MICROINSTRUCTION COUNTER LDB TMOD4 WRITE WCS TO LDX P4 A "RTN DEC A A " LDY P4+1 JSB WRITE MICROINSTRUCTION LDB SAVE4,I MOVE CENTER TEST STB P3 MICROINSTRUCTION ISZ SAVE4 TO MICROPROGRAM LDB SAVE4,I OBJECT CODE STB P3+1 AREA ISZ SAVE4 BUMP POINTER AGAIN SKP CCB LDA SAVE5 GET PASS #/CTM# SZA IN PASS 1,CTM#1? JMP T23.1 NO STA B.REG YES.SET STA X.REG UP STB Y.REG EXPECTED STB E.REG REGISTERS STA O.REG LDA .M2 STA A.REG JMP T23.5 GO DO PASS 1 T23.1 CPA .1 IN PASS 2,CTM#2? CLA,RSS JMP T23.2 NO STA E.REG YES.SET UP STB X.REG EXPECTED LDA .32K REGISTERS STA B.REG JMP T23.5 GO DO PASS 2 T23.2 CPA B2 IN PASS 3,CTM#3? CLA,RSS JMP T23.3 NO STA B.REG YES.SET UP LDA B7760 EXPECTED STA Y.REG REGISTERS JMP T23.5 GO DO PASS 3 T23.3 CPA B3 IN PASS 4,CTM#4? RSS JMP RDATA,I NO.DONE STB Y.REG YES.SET UP CCA EXPECTED REGISTERS STA A.REG T23.5 CLA INITIALIZE CENTER TEST T23.4 STA SAVE6 MICROINSTRUCTION RAM ADDRESS LDB TMOD4 MOVE LDX P2 TEST LDY P2+1 MICROPROGRAM JSB LOAD1 IN INA WCS LDX P3 LDY P3+1 JSB LOAD1 SKP CLO ARRANGE CLB,CLE REGISTERS CCA CAX CAY STF05 STF WCS ENABLE WCS OCT 105200 CALL MICROPROGRAM CPA A.REG A-REG OK? JMP *+3 YES JSB ERRMM NO.REPORT ERROR JMP RDATA,I CAN'T GO ON CPB B.REG B-REG OK? JMP *+3 YES JSB ERRMM NO.REPORT ERROR JMP RDATA,I CAN'T GO ON CXA COPY X & Y CYB INTO A & B CPA X.REG X-REG OK? JMP *+3 YES JSB ERRMM NO.REPORT ERROR JMP RDATA,I CAN'T GO ON CPB Y.REG Y-REG OK? JMP *+3 YES JSB ERRMM NO.REPORT ERROR JMP RDATA,I CAN'T GO ON SOS SET UP CLA,RSS O-REG CCA IN A SEZ SET UP CCB,RSS E-REG CLB IN B CPA O.REG O-REG OK? JMP *+3 YES JSB ERRMM NO.REPORT ERROR JMP RDATA,I CAN'T GO ON CPB E.REG E-REG OK? JMP *+3 YES JSB ERRMM NO.REPORT ERROR JMP RDATA,I CAN'T GO ON LDA SAVE6 DONE A PASS INA ON ALL WCS WITH CPA B1776 CURRENT CTM? RSS JMP T23.4 NO.CONTINUE LDA SAVE5 YES.BUMP INA PASS #/CTM# JMP T23.6 AND CONTINUE HED TST24-RAM MOD DECODER TEST * WCS IS LOADED WITH THE FOLLOWING MICROCODE: * * ROM RAM * ADR. ADR. MICROCODE * * 1000 0000 RTN * 1001 0001 RTN INC A A * 1002 0002 PASS * TO TO * 1777 777 * 2000 1000 PASS A B * 2001 1001 JSB 0B * 2002 1002 RTN INC B B * 2003 1003 * TO TO PASS * 2777 1777 * * THE JSB INSTRUCTION IS MODIFIED TO ACCESS ALL MODS * ON THE WCS BOARD. THE CORROSPONDING MOD NUMBER IS THEN * ASSIGNED AND THE MACRO IS EXECUTED. THIS IS DONE FOR * BOTH MOD NUMBER OUTPUTS. * TST24 EQU * ADDEC NOP CLA SATRT WITH UPPER MOD STA SAVE6 LDA TMAC SET MICRO INSTRUCTION FOR TEST STA T24.X LDA LSTMD GET LAST MODULE FOR TESTING STA SAVE7 ADA .M1 DECREMENT IT STA SAVE4 SAVE MOD NUMBER T24.0 ALF,ALF RAL MPY BY 1000 STA SAVE5 LDB TMOD LOAD WCS WITH LDX P2 A "PASS" LDY P2+1 JSB WRITE MICROINSTRUCTION LDA SAVE6 LOAD LDX RT "RTN" LDY RT+1 MICROINSTRUCTION JSB LOAD1 AT RAM ADDRESS 0 LDA SAVE6 LOAD INA LDX P1 "RTN INC A A" LDY P1+1 MICRO INSTRUCTION JSB LOAD1 AT RAM ADDRESS 1 SKP LDA B1000 LOAD ADA SAVE6 LDX CTMTA+6 PASS A B LDY CTMTA+7 MICROINSTRUCTION JSB LOAD1 AT RAM ADDRESS 1000 LDA P6 LOAD LDB P6+1 JSB XXXX RRR 5 MOVE TO ADDRESS ADB SAVE5 INB RRL 5 REPOSITION XAX CHANGE HANDS XBY " " LDA B1000 INA ADA SAVE6 LDB SAVE7 BLF RBL,RBL ADB SAVE4 JSB LOAD1 LDA B1000 LOAD "RTN INC B B" INA INA ADA SAVE6 LDX P8 MICROINSTRUCTION LDY P8+1 JSB LOAD1 AT RAM ADDRESS 2002 SKP CCA ARRANGE CLB REGISTERS STF06 STF WCS ENABLE WCS T24.X OCT 0 CALL MICROPROGRAM CLF06 CLF WCS DISABLE WCS CPA B REGS OK?? JMP T24.1 LDA SAVE7 ALF RAL,RAL ADA SAVE4 DISPLAY MOD NUMBERS JSB ERMS,I REPORT ERROR DEF E024 T24.1 LDA SAVE6 IS THIS THE SECOND MOD SZA ?? JMP T24.3 YES LDA SAVE4 NO DECREMENT MOD NUMBER ADA .M1 STA SAVE4 CPA LOWMD IS THIS THE LAST? RSS JMP T24.0 NO DO IT LDA B1000 YES THEN SET FOR OTHER MOD STA SAVE6 LDA LSTMD RESET MOD NUMBER AND REVERSE STA SAVE4 ADA .M1 STA SAVE7 JMP T24.0 T24.3 LDA SAVE7 DECREMENT MOD NUMBER ADA .M1 STA SAVE7 CPA LOWMD END OF TEST? JMP ADDEC,I YES JMP T24.3 NO HED TST25-USER LOOPING TEST * PROVIDES VARIOUS LOOPS FOR USER * TST25 EQU * ULOOP NOP JSB MSGC,I REPORT DEF H025 MESSAGE H025 T25.1 CLA INITIALIZE RAM STA SAVE6 DATA WORD COUNTER LDA PBUFF INITIALIZE STA SAVE5 BUFFER POINTER * ENTER INITIAL RAM LOADING HLT 25B ADDRESS IN A-REG AND MOD # IN * B-REG.PRESS RUN. STA SAVE8 SAVE STA SAVE9 PARAMETERS STB SAVE4 AND SAVE MOD #S * ENTER RAM DATA IN BITS 0-7 OF T25.3 HLT 26B A-REG & 0-15 OF B-REG.SET A-REG * BIT15 IF THIS IS THE LAST ENTRY. * PRESS RUN. STA SAVE7 LOAD AND B377 WCS CAX WITH CBY CURRENT LDB SAVE4 RAM LDA SAVE8 DATA JSB LOAD1 STX SAVE5,I SAVE RAM ISZ SAVE5 DATA IN STY SAVE5,I BUFFER ISZ SAVE5 ISZ SAVE8 INCREMENT RAM ADDRESS ISZ SAVE6 BUMP RAM DATA WORD COUNTER SKP LDA SAVE7 SSA LAST ENTRY? JMP T25.2 YES LDA SAVE8 NO.RAM AND MASK8 ADDRESS SZA EXCEED 1777? JMP T25.2 YES.NO MORE ENTRIES LDA SAVE6 NO.RAM ADA .M16 DATA WORD COUNTER ADA .M16 >32(DECIMAL)? SSA JMP T25.3 NO.GO GET NEXT ENTRY T25.2 LDA PBUFF YES.REINITIALIZE STA SAVE5 BUFFER POINTER LDA SAVE6 GET RAM CMA,INA DATA WORD STA SAVE7 COUNT LDA SAVE9 REINITIALIZE THE STA SAVE8 STARTING RAM ADDRESS JSB MSGC,I REPORT 1ST PART DEF H103 OF MESSAGE H103 T25.4 LDA SAVE8 CONVERT RAM LDB P103B ADDRESS TO JSB .10BS ASCII IN MSG H103A LDA SAVE5,I CONVERT CLE 8 OF LDB PS100 RAM DATA JSB O2AS,I TO ASCII LDB P103C IN MESSAGE JSB .8MSB H103A ISZ SAVE5 BUMP BUFFER POINTER LDA SAVE5,I CONVERT 16 CLE +1 OF RAM LDB P103D DATA TO ASCII JSB O2AS,I IN MESSAGE H103A JSB MSGC,I REPORT 1ST DEF H103A MICROWORD ISZ SAVE5 BUMP BUFFER POINTER ISZ SAVE8 BUMP RAM ADDRESS ISZ SAVE7 DONE? JMP T25.4 NO.DO NEXT RAM DATA WORD HLT 31B YES SZA READ VIA I/O LOOP? JMP T25.5 NO STA PFLAG YES.CLEAR LOAD FLAG JMP T25.6 T25.5 STA PMAC,I SAVE IT INA,SZA LOAD & READ VIA I/O LOOP? JMP T25.7 NO CCA YES.SET STA PFLAG LOAD FLAG SKP T25.8 LDA PBUFF REINITIALIZE STA SAVE5 BUFFER POINTER, LDA SAVE9 STARTING STA SAVE8 RAM ADDRESS & LDA SAVE6 RAM DATA CMA,INA WORD COUNT STA SAVE7 T25.9 LDA SAVE8 LOAD LDB SAVE4 WCS LDX SAVE5,I WITH ISZ SAVE5 CURRENT LDY SAVE5,I DATA JSB LOAD1 ISZ SAVE5 BUMP ISZ SAVE8 PARAMETERS ISZ SAVE7 DONE? JMP T25.9 NO T25.6 LDA SAVE9 REINITIALIZE STA SAVE8 RAM ADDRESS, LDA SAVE6 RAM DATA CMA,INA WORD COUNTER STA SAVE7 LDA SAVE8 SET UP CLC14 CLC WCS STARTING OTA20 OTA WCS RAM ADDRESS STC10 STC WCS DATA MODE LIA09 LIA WCS READ LIB08 LIB WCS WCS ISZ SAVE7 DONE? JMP LIA09 NO LIA S YES.IS AND BIT7 BIT 7 SZA,RSS SET? JMP *+4 NO.CONTINUE LOOP LDB BIT7 YES.DEBOUNCE IT JSB SWRT,I JMP ULOOP,I LDA PFLAG READ LOOP SZA ONLY? JMP T25.8 NO.GO LOAD ALSO JMP T25.6 YES T25.7 LDA PMAC,I RE-ENTER CPA B100K RAM DATA? JMP T25.1 YES STF07 STF WCS ENABLE WCS FOR MACRO CALL JMP PT250,I NO.GO CALL MICROPROGRAM T25.A LIA S IS AND BIT7 BIT 7 SZA,RSS SET? JMP *+4 NO.CONTINUE LDB BIT7 YES.DEBOUNCE IT JSB SWRT,I JMP ULOOP,I JMP PT250,I NO.GO CALL MICROPROGRAM HED MESSAGES HEADR OCT 6412 ASC 19,HP 13197A WRITEABLE CONTROL STORE DIAG ASC 04,NOSTIC / ZPSC ASC 6,PASS XXXXXX/ E0BB ASC 07,E0BB BAD LOAD/ H100 ASC 08, RAM ADDRESS= M100A ASC 3,XXXXXX OCT 6412 ASC 2, ASC 08,RAM DATA LOADED= M100B ASC 2,XXXX M100C ASC 3,XXXXXX OCT 6412 ASC 2, ASC 08,RAM DATA READ = M100D ASC 2,XXX. M100E ASC 4,XXXXXX / H102 ASC 3,TEST M102A ASC 2,XX / ECC ASC 1,E0 ECCA ASC 1,XX ASC 10, BAD COMMAND STATE / E036 ASC 08,E036 BAD MACRO/ EEE ASC 4, ENABLED EDD ASC 4,DISABLED EFF ASC 07,E0FF WCS NOT EFFA BSS 4 ASC 1, / EGG ASC 07,E0XX BAD MOD / H101 ASC 08, MOD NUMBER H101A BSS 1 OCT 6412 ASC 2, ASC 17,RAM ADDRESS MICRO-OBJECT CODE OCT 6412 ASC 2, H101B BSS 2 ASC 07, H101C BSS 5 OCT 6412 ASC 2, H101E BSS 2 ASC 07, H101F BSS 5 OCT 6412 ASC 2, H101H BSS 2 ASC 07, H101I BSS 5 OCT 6412 ASC 2, H101K BSS 2 ASC 07, H101L BSS 5 OCT 6412 ASC 2, H101N BSS 2 ASC 07, H101O BSS 5 ASC 1, / H103 ASC 13,H031 RAM ADDRESS RAM DATA/ H103A ASC 2, H103B BSS 2 ASC 4, H103C BSS 2 H103D BSS 3 ASC 1, / E022 ASC 11,E022 BAD WCS PRIORITY/ E024 ASC 11,E024 BAD MOD DECODER/ H025 ASC 09,H025 USER LOOPING/ H033 ASC 11,H033 PRESS PRESET,RUN/ E016 ASC 09,E016 NO PRIORITY/ E037 ASC 8,E037 BAD ADDRESS OCT 6412 ASC 09, RAM ADDRESS E037A BSS 2 ASC 10, ALTERED ADDRESS E037B BSS 2 ASC 1, / E004 ASC 25,E004 SELECT CODE FAILURE/ E034 ASC 09,E034 NO DCPC FLAG/ E032 ASC 10,E032 BAD RAM OUTPUT/ * BUFF BSS 64 TST25 BUFFER AREA HED MACRO CALL AREA FOR TST25 ORG 6000B T25.0 NOP NOP NOP NOP MACRO BSS 1 NOP NOP NOP NOP JMP PT25A,I RETURN TO TST25 FWAA EQU * END