ASMB,A,B,L,C
      HED MICROCODED MEMORY DIAGNOSTIC  (DSN 102006)
      ORG 0         JANUARY 4, 1977  DATE CODE  1644
      SUP 
*     GENERAL OPERATING PROCEDURE 
* 
*         A. LOAD DIAGNOSTIC CONFIGURATOR AND SET IT UP.
*         B. LOAD DIAGNOSTIC MAIN PROGRAM 
*         C. LOAD ADDRESS 100B. 
*         D. LOAD SWITCH REG. WITH SELECT CODE AND OPTIONS
*         E. PRESS RUN AND WAIT FOR HALT 102074.
*         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 
*                   11 = SUPRESS ERROR MESSAGES 
*                   10 = SUPRESS NON-ERROR MESSAGES 
*                    9 = GO TO USER CONTROL SECTION 
*                        AT END OF PRESENT TEST 
*                    8 = RESERVED 
*                    7
*                      = MEMORY UNDER TEST 4K BLOCK NO. (DISPLAY ONLY)
*                    0
* 
*         NOTE: STANDARD RUN SHOULD BE WITH SW. REG. = 0
*               USER CONTROL WILL ASK FOR A 16 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 
* 
*         PROGRAM HALTS 
* 
*         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    INCORRECT COMPUTER TYPE (CAN'T BE USED) 
*         102071    WCS NOT LOADED CORRECTLY
*         102070    RESERVED
* 
*         1020XX    ERROR HALTS 
* 
*         106077    TRAP CELL HALT
* 
      SKP 
*         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 
WCS   EQU 10B       WCS SELECT CODE 
* 
      ORG 2B
* 
      OCT 106077
      DEF PERR      LINK TO PARITY ERROR ROUTINE
      OCT 106077
      JSB 3B,I      GO TO PARITY ERROR ROUTINE
      REP 14
      OCT 106077,106077,106077,106077 
      OCT 106077,106077 
      JMP 130B      GO TO CONFIGURATION SECTION 
      BSS 1         RESERVED
      BSS 1         CONSOLE OUTPUT DRIVER 
      BSS 1         LINE PRINTER DRIVER 
      BSS 1         CONSOLE INPUT DRIVER
      DEF FWAA      FIRST WORD OF AVBL. MEMORY
LWAA  BSS 1         LAST WORD OF AVBL. MEMORY 
      BSS 1         RESERVED BY CONFIGURATOR
      BSS 1         RESERVED BY CONFIGURATOR
      BSS 4         SC FOR CONFIGURATOR DRIVERS 
CPTO  BSS 1         COMPUTER TYPE/OPTIONS 
USSC  BSS 1         USER CARD TYPE AND SELECT CODE
MEMO  BSS 1         MEMORY SIZE AND TYPE
      BSS 1         RESERVED
      BSS 1         1 MILL SEC TIMER
      BSS 1         CONFIGURATOR SWITCH CK PTR
      BSS 1         INTEGER TO ASCII CONVERSION 
      BSS 1         OCTAL TO ASCII CONVERSION 
      BSS 1         ASCII CONVERSION
DSN   OCT 102006    DIAGNOSTIC SERIAL NUMBER
      BSS 1         FORMATTER (IN CONFIGURATOR) 
      SKP 
*         CONFIGURATION SECTION 
* 
CONF  CLC INTP,C    TURN I/O SYSTEM OFF 
      LIA SW        GET SELECT CODE AND OPTIONS 
      STA USSC      SAVE THEM 
      AND B77       ELIMINATE OPTIONS 
      LDB A 
      CMB,INB       CHECK THAT SC > 7 
      ADB B7
      SSB           ? 
      JMP *+3       OK GO ON
E073  HLT 73B       NO
      JMP CONF      TRY AGAIN 
      LDB IOIP      INITIALIZE TEST I/O 
      STA SAVA      SAVE SELECT CODE
      STB SAVB      SAVE TABLE ADDRESS
IOL   LDB SAVB,I    GET ADDRESS OF LOCATION 
      CPB BM1       IS IT THE TERMINATOR
      JMP MCF       YES CONTINUE
      LDA B,I       NO - GET CONTENTS 
      AND IOM       MASK OFF OLD SELECT CODE
      IOR SAVA      ADD IN NEW SELECT CODE
      STA B,I       RESTORE  IT 
      ISZ SAVB      MOVE TO NEXT ADDRESS
      JMP IOL       DO IT 
MCF   LDA CNSLO     CHECK IF ALREADY MOVED
      SZA           ??
      JMP MCF0      YES  SKIP RELOCATION
      LDA LWAA      SAVE CONFIGURATOR ROUTINES
      AND B7777 
      LDB A 
      LDA LWAA
      MVW MCCT
      LDA 102B      SET CONSOLE LINK TO 4K AREA 
      AND B7777 
      STA CNSLO 
      LDA 124B        AND CONVERSION PROGRAM
      AND B7777 
      STA O2AS
MCF0  LDB CPTO      CHECK WHICH MICROCODE TO USE
      SSB,RSS 
E072  HLT 72B       WRONG COMPUTER TYPE 
      BLF 
      LDA MX.MC     GET 21MX-M MICROCODE POINTER
      SLB           MX-M OR MX-E? 
      LDA MX.EC     21MX-E MICROCODE POINTER
      STA SAVA      SAVE PONTER 
      STA TMP 
      LDA MXCC      SET MICROCODE TRANSFER COUNT
      STA SAVB
      LDA USSC      CHECK WHICH INTERFACE IT IS 
      SSA 
      JMP QKWCS     IT'S 256 SMALL WCS
      SKP 
WCS00 CLC WCS       PUT INTERFACE IN COMMAND
      LDA SAVA,I    GET STARTING ADDRESS
      ISZ SAVA
WCS01 OTA WCS 
      LDA SAVA,I    GET MODULE NUMBER 
WCS02 OTA WCS       GIVE IT TO INTERFACE
WCS03 STC WCS       PUT INTF IN DATA MODE 
      ISZ SAVA      MOVE UP TO NEXT MICRO INSTRUCTION 
      LDA SAVA,I
WCS04 OTA WCS 
      ISZ SAVB      DONE LOADING? 
      JMP *-4       NO
      LDA TMP       RESTORE POINTER 
      STA SAVA
      LDA MXCC
      STA SAVB        AND COUNT 
WCS05 CLC WCS       PUT INTF IN COMMAND STATE 
      LDA SAVA,I    GET STARTING ADDRESS
      ISZ SAVA
WCS06 OTA WCS       OUTPUT ADDRESS
WCS07 STC WCS       PUT INTF IN DATA STATE
      ISZ SAVA      SKIP MODULE NUMBER
WCS08 LIA WCS 
      CPA SAVA,I    IS IT ALRIGHT?
      JMP *+3 
E071  HLT 71B       NO BAD WCS INTERFACE
      JMP CONF      START AGAIN 
      ISZ SAVB      DONE CHECKING?
      JMP *-7       NO
      JMP CFCMP     CONFIGURATION COMPLETE
      SPC 4 
QKWCS SLB,RSS       IS THIS A 21MX-E? 
      JMP *+3       YES OK
E070  HLT 70B       NO THEN STOP HERE 
      JMP CONF      TRY AGAIN 
WCS18 CLC WCS       IF ERROR SET 1K TO MOD 17 17
      CCA 
WCS19 OTA WCS 
WCS20 OTA WCS 
      ISZ SAVA      SKIP ADDRESS
      ISZ SAVA      AND MODULE NUMBER 
      SKP 
      CLA           SET STARTING ADDRESS
      STA HIADD 
QKLPW LDA HIADD     GET ADDRESS 
      ALF,ALF       MOVE TO UPPER BYTE
      IOR SAVA,I    GET LOWER BYTE FROM BUFFER
      ISZ SAVA      MOVE TO NEXT WORD 
      LDB SAVA,I
      ISZ SAVA
WCS09 STF WCS       SET DIRECTION (OUT) 
WCS10 OTA WCS       OUTPUT MSB
WCS11 OTB WCS         AND  LSB
WCS12 STC WCS       ENABLE DATA TO RAMS 
      ISZ HIADD     MOVE TO NEXT ADDRESS
      ISZ SAVB
      ISZ SAVB      DONE LOADING? 
      JMP QKLPW     NO
      LDA TMP       RESTORE POINTER FOR VERIFICATION
      INA 
      INA 
      STA SAVA
      LDA MXCC      RESET COUNT 
      STA SAVB
      CLA           SET ADDRESS TO 0
      STA HIADD 
QKLPR LDA HIADD     GET ADDRESS 
      ALF,ALF       PUT IN UPPER BYTE 
WCS13 STF WCS       SET DIR FF
WCS14 OTA WCS       OUTPUT ADDRESS
WCS15 STF WCS       RESET DIR FF
WCS16 LIA WCS       GET MSB 
WCS17 LIB WCS       AND LSB 
      AND B377      MASK OFF ADDRESS
      CPA SAVA,I    FIRST OK? 
      JMP *+3 
      HLT 71B       BAD WCS 
      JMP CONF      TRY AGAIN 
      ISZ SAVA      MOVE TO NEXT WORD 
      CPB SAVA,I    IS IT OK? 
      JMP *+3 
      HLT 71B       NO
      JMP CONF      TRY AGAIN 
      ISZ SAVA
      ISZ HIADD 
      ISZ SAVB
      ISZ SAVB      DONE CHECKING?
      JMP QKLPR     NO
      JMP CFCMP     YES CONFIGURATION COMPLETE
      SKP 
*         CHECK TO SUPPRESS ERROR HALTS 
* 
HLTS  NOP           ENTRY 
      STA SAVA      SAVE A REG
      STB SAVB        AND B REG 
      STX SAVX        AND X REG 
      STY SAVY        AND Y REG 
      LDB SW11      CHECK TO SUPPRESS ERROR MESSAGES
      JSB SWRT
      JMP HLTS0     YES SKIP OUTPUT 
      LDA D21       OUTPUT TITLE
      LDB HLTS,I    GET MESSAGE POINTER 
      ISZ HLTS      SKIP OVER POINTER 
      JSB CNSLO,I 
      LDA HLTS,I    GET HALT CODE 
      ISZ HLTS
      IOR SFTER     SOFT ERROR FLAG 
      STA HLT 
      CLE           CONVERT NUMBERS 
      LDA SAVA
      LDB DACT
      JSB O2AS,I    DATA READ 
      CLE 
      LDA SAVB
      LDB DEXP
      JSB O2AS,I    DATA WRITTEN
      LDA SAVX
      ELA,CLE,ERA   CLEAR BIT 15
      LDB DADD
      CLE 
      JSB O2AS,I    DATA ADDRESS
      LDA SAVY
      ELA,CLE,ERA   CLEAR BIT 15
      LDB DPTAD 
      CLE 
      JSB O2AS,I    TEST PAT ADD
      CCE 
      LDA MOD       GET MODULE NO.
      LDB DMOD
      JSB O2AS,I    CONVERT MODULE NUMBER 
      LDA MSGM+3
      STA MSG2+12 
      STA MSG3+12 
      LDA MSGM+2
      STA MSG2+11 
      STA MSG3+11 
      SKP 
      LDA SFTER     CHECK SOFT ER FLAG
      CLE,SZA 
      CCE 
      LDA CMSG0     GET MESSAGE COUNT 
      ADA G.R.F     ADD COUNT IF IN GAL.READ
      SEZ           SOFT ERROR? 
      ADA CMSG1     YES ADD COUNT 
      LDB DMSG0 
      SEZ           SOFT ERROR
      LDB DMSG1     YES GET DIFFERENT POINTER 
      JSB CNSLO,I 
      JMP *+3 
* 
HLTS0 ISZ HLTS
      ISZ HLTS
      LDB SW14      CHECK SWR BIT 14 TO SUPPRESS
      JSB SWRT      HALT
      JMP HLTS1     SKIP HALT INSTRUCTION 
      JSB SWDB      DEBOUNCE S-REG. 
      LDA SAVX      CONVERT ADDRESS 
      AND B7777 
      CAX           PUT IT IN X 
      LDY SAVY
      LDA SAVA
      LDB SAVB
HLT   NOP 
      CLA 
      STA SFTER     CLEAR SOFT ERROR FLAG 
HLTS1 LDA SAVA      RESTORE A & B 
      LDB SAVB
      LDX SAVX        AND X 
      LDY SAVY        AND Y 
      JMP HLTS,I    RETURN TO CALLER
* 
* 
* 
DACT  DEF MSG0+12 
DEXP  DEF MSG1+12 
DADD  DEF MSG2+12 
DPTAD DEF MSG3+12 
DMOD  DEF *+1 
MSGM  ASC 4,XXXXXXX 
CMSG0 DEC 96
CMSG1 DEC 12
DMSG0 DEF MSG0-1
DMSG1 DEF *+1 
      ASC 06,  SOFT ERROR 
      OCT 6412
MSG0  ASC 15,ACTUAL DATA  (READ)     XXXXXX 
      OCT 6412
MSG1  ASC 15,EXPECTED DATA (WRITTEN) XXXXXX 
      OCT 6412
MSG2  ASC 15,ADDR OF DATA FAILURE  YYY ZZZZ 
      OCT 6412
MSG3  ASC 15,TEST CELL ADDRESS     YYY ZZZZ 
      SKP 
*         SWITCH REGISTER CHECK 
* 
SWRT  NOP 
      STA SWRTA     SAVE A REGISTER 
      LIA SW        GET SWITCH REG. 
      AND B         MASK OUT BIT
      SZA,RSS       IS IT UP? 
      ISZ SWRT      NO
      LDA SWRTA     RESTORE A REGISTER
      LIB SW        LET B = SWITCH REGISTER 
      JMP SWRT,I    RETURN TO CALLER
* 
SWRTA NOP 
* 
* 
SWDB  NOP 
      STA SWDBA     SAVE A-REG. 
      STB SWDBB     SAVE B-REG. 
SWDB0 LDA SWDBC     SET LOOP COUNT
      STA SWRT
      LIB SW        GET CURRENT S-REG.
      LDA B 
      CMA 
      OTA SW
      LIA SW
      OTB SW
      CMA 
      CPA B         ANY BUTTONS HELD? 
      RSS           NO
      JMP SWDB0     YES WAIT FOR RELEASE
      ISZ SWRT      WAITED LONG ENOUGH? 
      JMP SWDB0+2   NO CHECK AGAIN
      LDA SWDBA     RESTORE A-REG.
      LDB SWDBB     RESTORE B-REG.
      JMP SWDB,I    RETURN
* 
SWDBA NOP 
SWDBB NOP 
SWDBC DEC -100
      SKP 
TSTR  NOP 
      LDA TSTR,I    GET MACRO INSTRUCTION TO BE EXECUTED
      STA MACRO 
      ISZ TSTR
      LDA TSTR,I    GET MESSAGE POINTER 
      STA TSTMS 
      ISZ TSTR
      LDA TSTR,I    GET HALT CODE 
      STA TSTEX 
      ISZ TSTR
      LDA LOADD     GET STARING ADDRESS 
      CAX           PUT IT IN X 
      LDA HIADD       AND ENDING ADDRESS
      CAY           PUT IT IN Y 
      LDB BG        GET BACKGROUND
      LDA TP        AND TEST PATTERN IF APP 
WCSSF STF WCS       TURN ON WCS 
MACRO NOP 
WCSCF CLF WCS       TURN OFF WCS
      STA SAVA      SAVE ACTUAL DATA
      CXA           PUT X REG IN TO A REG 
      SSA           IS THIS AN ERROR? 
      JMP TSTER     YES 
      CYA           PUT Y REG IN A REG
      SSA,RSS       IS THIS OPERATOR INTERRUPT? 
      JMP TSTR,I    NO THEN COMPLETE
TSTRN LIA SW         ABORT? 
      ALF,ALF 
      RAR,SLA 
      JMP .USR,I    YES 
      CXA           CLEAR BIT 15 IN X REG 
      ELA,CLE,ERA 
      CAX 
      STA SAVA
      CYA           NOW DO THE Y REG
      ELA,CLE,ERA 
      CAY 
      CPA HIADD     LAST ADDRESS
      XOR SAVA
      SZA,RSS       ? 
      JMP TSTR,I    YES 
      LDA MACRO     CHECH IF GAL READ REENTER 
      CPA MACGL     ??
      LDA MACGR     YES GET DIFFERENT MACRO 
      STA MACRO 
      CPA MACGR     IS THIS A RETURN TO GAL.READ? 
      RSS           YES DONT UPDATE X REG 
      ISX           UPDATE X-REG. 
      JMP MACRO-1   CONTINUE EXECUTION
* 
TSTER LDA SAVA      RESTORE A REGISTER
      JSB HLTS      REPORT ERROR
TSTMS NOP 
TSTEX NOP           SET TO ERROR HALT 
      JMP TSTRN     CONTINUE
      SKP 
*     PARITY INTERRUPT ROUTINE
* 
PERR  NOP 
      STA PERRS     SAVE A REGISTER 
      LIA 5B        GET VIOLATION ADDRESS 
      SSA           IS THIS A PARITY ERROR
      JMP *+3 
E067  HLT 67B       NO
      JMP PEREX     JUST SKIP IT
      ELA,CLE,ERA 
      CPA PERRA     SAME ERROR? 
      JMP PERR0     YES 
      STA PERRA     NO SAVE ADDRESS 
      LDA PERR      SAVE RETURN ADDRESS 
      STA PERTN 
      CYA           PUT TEST PATTERN ADDRESS IN A 
      CPB BG        IS THIS THE BACKGROUND? 
      CXA           YES GET BG ADDRESS
      ELA,CLE,ERA   CLEAR BIT 15 (IF NECESSARY) 
      CPA PERRA     DOES ADDRESS AGREE WITH TEST ADDRESS
      JMP *+4       YES 
      LDA PERRA     GET PARITY ERROR ADDRESS
E066  HLT 66B       TELL OPERATOR 
      JMP *-1       NOT RECOVERABLE 
      STB A,I       TRY STORING IT AGAIN
      STF 5B        ENABLE PERR AGAIN 
      LDA A,I       READ IT AGAIN 
      LDA SW11      SET SOFT ERROR FLAG 
      STA SFTER 
* 
PERR0 LDA PERRS     GET ORIGINAL ERROR DATA 
      CPA B         IS IT DATA OR PARITY CHIP 
      RSS 
      JMP PEREX     DATA ERROR CONTINUE 
      JSB HLTS
      DEF EM65
E065  HLT 65B       PARITY CHIP 
      CXA           CLEAR ERROR BIT IN X
      ELA,CLE,ERA 
      CAX 
      CYA           ADD BIT TO Y
      IOR SW15
      CAY 
PEREX CLA 
      STA PERRA 
      STF 5B        ENABLE PARITY INTERRUPTS AGAIN
      LDA PERRS     RESTORE A-REG.
      JMP *+1,I     RETURN TO CONTINUE TESTING
* 
PERTN NOP 
PERRA NOP 
PERRS NOP 
EM65  ASC 10,E065 PRTY CHIP ERROR 
      OCT -1
      SKP 
*     SET 4K MEMORY BLOCK TO BE TESTED
*     ALSO SETS DMS (IF AVAILABLE)
* 
TBLK  NOP 
      LDB SW9       CHECK FOR ABORT 
      JSB SWRT
      JMP .USR,I    YES ABORT 
      SZA           FIRST TIME? 
      JMP TBLK3     NO DO NEXT BLOCK
      STA SYMPG     CLEAR DMS FLAG
      LDA USADD     IS USER IN MEMORY EXPANSION 
      AND B370
      SZA,RSS          AREA?? 
      JMP TBLK0     NO
      LDA USADD     YES GET MODULE NUMBER 
      AND B377
      RAL,RAL       MOVE TO BLOCK 
      ADA BM1       MOVE BACK ONE 
      STA SYMPG     PUT IT IN  SYSTEM MAP AREA
      JMP TBLK4 
TBLK0 LDA USADD     GET USER BLOCK
      ALF,ALF 
      ALF 
      AND B70K
      SZA,RSS       IF 0 START WITH SECOND PAGE 
      LDA B10K      YES START AT 8K 
TBLK2 LDB A         SET UPPER 
      IOR B7777        LIMIT
      STA HIADD     SAVE HIGH LIMIT 
      STB LOADD       AND LOW LIMIT 
      BLF,RBL       UPDATE S-REG. FOR DISPLAY 
      RBL 
      LDA SYMPG     IN DMS? 
      SZA 
      LDB SYMPG-3   YES GET FIRST PAGE
      BRS,BRS 
      LIA SW
      AND SWMM      ELIMINATE OLD STATUS
      IOR B         INCLUDE NEW 
      OTA SW        DISPLAY IT
      STB MOD       SAVE MODULE NUMBER
      ISZ TBLK      RETURN TO P+2 
      JMP TBLK,I    RETURN FOR TEST 
      SKP 
TBLK3 LDA USADD     CHECK IF
      SZA,RSS       ANY USER MODULES
      JMP *+6       NO
      ALF,ALF 
      AND B377
      SZA           MORE THAN ONE BLOCK?
      CPA MOD       OR END? 
      JMP TBLK5     YES EXIT
      LDA MEMO      DONE
      AND B70K        ALL 
      LDB A 
      LDA LOADD 
      AND B70K
      CPA B             OF BASE MEMORY
      JMP *+3       YES - CHECK FOR DMS 
      ADA B10K      NO MOVE UP ONE BLOCK
      JMP TBLK2     NOW RETURN
TBLK4 LDA USSC      IS DMS PRESENT? 
      RAL 
      SSA,RSS       ??
      JMP TBLK,I    NO END OF MEMORY
      LDA SYMPG     YES IS THIS THE FIRST TIME
      SZA,RSS       ??
      LDA B37       YES SET LAST PAGE 
      INA           MOVE TO NEXT PAGE 
      STA SYMPG-3   SET PAGE TO BE TESTED 
      INA 
      STA SYMPG-2 
      INA 
      STA SYMPG-1 
      INA 
      STA SYMPG 
      LDA SYMT      GET POINTER TO MAP TABLE
      SYA           LOAD DMS SYSTEM MAP REGISTERS FROM TABLE
      CLA           ZERO THE
      LFA             BASE PAGE FENCE 
      SJP *+2       TURN ON SYSTEM MAPS 
      LDA B70K      SET ADDRESS FOR CHECK 
      STA LOADD 
      LDA ALPT0     GET TEST PATTERN
      STA LOADD,I   TRY TO STORE IT 
      LDA B70K      SET LAST PAGE FOR TEST
      LDB USADD     SKIP CHECK IF USER SPECIFIES
      SZB 
      JMP TBLK2     HE DID
      CLF 5B        TURN OFF PAITY ERROR
      LDB LOADD,I   GET DATA BACK 
      STF 5B        TURN PARITY CIRCUIT ON
      SZB           WAS THERE ANY MEMORY THERE? 
      JMP TBLK2     YES TEST IT 
TBLK5 LDA SYMPG     CHECK TO TURN OFF DMS 
      SZA,RSS 
      JMP TBLK,I
      DJP *+2       YES SO END OF MEMORY DISABLE MAPS 
      JMP TBLK,I    RETURN
      SKP 
SYMT  DEF *+1 
      OCT 00,01,02,03,04,05,06,07 
      OCT 10,11,12,13,14,15,16,17 
      OCT 20,21,22,23,24,25,26,27 
      OCT 30,31,32,33,34,35,36
SYMPG OCT 37
      SKP 
SAVA  NOP 
SAVB  NOP 
SAVX  NOP 
SAVY  NOP 
EOLC  NOP 
TSTA  NOP 
SINA  NOP 
UINA  NOP 
STDA  OCT 000077
B2    OCT 2 
B3    OCT 3 
B7    OCT 7 
B77   OCT 77
BM1   DEC -1
BM2   DEC -2
IOM   OCT 177700
SW15  OCT 100000
SW14  OCT 40000 
SW13  OCT 20000 
SW12  OCT 10000 
SW11  OCT 4000
SW10  OCT 2000
SW9   OCT 1000
SWM9  OCT 176777
SWMM  OCT 177600
TSTN  NOP 
B10K  OCT 10000 
B37   OCT 37
B370  OCT 370 
B377  OCT 377 
B7777 OCT 7777
B70K  OCT 70000 
D21   DEC 21
D32   DEC 32
HIADD NOP 
LOADD NOP 
USADD NOP 
MOD   NOP 
TP    NOP 
BG    NOP 
G.R.F NOP 
SFTER NOP 
TMP   NOP 
MACGL OCT 105624
MACGR OCT 105627
FPMC  OCT 105620
ALPT0 OCT 052525
ALPT1 OCT 125252
MX.MC DEF MX.MS 
MX.EC DEF MX.ES 
MXCC  ABS MX.MS-MX.ME+2 
MCCT  ABS 10000B-6477B
.USR  DEF USR 
CNSLO DEF *-* 
O2AS  DEF *-* 
      SKP 
IOIP  DEF *+1 
      DEF WCS00 
      DEF WCS01 
      DEF WCS02 
      DEF WCS03 
      DEF WCS04 
      DEF WCS05 
      DEF WCS06 
      DEF WCS07 
      DEF WCS08 
      DEF WCS09 
      DEF WCS10 
      DEF WCS11 
      DEF WCS12 
      DEF WCS13 
      DEF WCS14 
      DEF WCS15 
      DEF WCS16 
      DEF WCS17 
      DEF WCS18 
      DEF WCS19 
      DEF WCS20 
      DEF WCS21 
      DEF WCSSF 
      DEF WCSCF 
      DEF W.SSF 
      DEF W.SCF 
      DEC -1
* 
TSTP  DEF *+1 
      DEF TST00     ADDRESS AND PATTERN TEST
      DEF TST01     GAL.READ 052525 
      DEF TST02     GAL.READ 125252 
      DEF TST03     GAL.READ 177776 
      DEF TST04     GAL.READ 000001 
      DEF TST05     MODULE 0 TEST (FIRST 4K)
      DEC -1        LIST TERMINATOR 
                                                                                                                                                                                                                                        