               JOB  Card 1 of core dump routine
     * SET WORD MARKS FOR THE SECOND CARD
               ORG  1
               SW   A1,A2
     A1        SW   A3,A4
     A2        NOP  0,0,0
     A3        SW   A5,A6
     A4        NOP  0,0,0
     A5        SW   A7
     A6        SW   A8,A9
     A7        SW   A10
     A8        SW   A11
     A9           N0
     A10       SW   A12
     A11       SW   A13
     A12       R    BLOOP            READ THE NEXT CARD
     A13       DCW  #1
               JOB  Card 2 of core dump routine
     * Replace group marks in 81-399 by ).
               ORG  1
     BLOOP     MCW  BADDR,BTESTG+6   SET TEST ADDRESS
               MCW  BADDR,BREPLG+6   SET REPLACEMENT ADDR
     BTESTG    BCE  BREPLG,5777+X1,"  GROUP MARK? (B REPLACED) 
     BBUMP     A    BINCR,BADDR      UPDATE TEST ADDRESS
               BCE  BDONE,BADDR-2,4  DONE WITH SCAN?
               B    BLOOP            AROUND AGAIN
     BREPLG    MCW  BLOZ,5777+X1     REPLACE GROUP MARK (B REPLACED)
               B    BBUMP            UPDATE TEST ADDRESS
     BADDR     DCW  @081@
               DC   @ @
     BDONE     CC   K                SKIP TWO LINES
               CS   *-3              NEED NEW WORD MARKS
               SW   CSTART           READY FOR A NEW CARD
     BINCR     R    CSTART           READ A NEW CARD
     BLOZ      DCW  @)@              LOZENGE ON THE  A  CHAIN
               JOB  Card 3 of core dump routine
     * Set word marks for the next card, print the print
     * area, then print the word marks.
               ORG  1
     CSTART    SW   C1,C2
     C1        SW   C3
     C2        SW   C4
     C3        SW   C5,C6
     C4        SW   C7,C8
     C5        SW   C9
     C6        SW   C10,C11
     C7        SW   DLOAD,C14
     C8        SW
     C9        SW   C15,C16
     C10       SW   C17,C12
     C11       CW   C4
     C12       SW   DLOAD2
     C13       W
     C14          2)
     C15          N0
     C16       R    DSTART
     C17       NOP
               JOB  Card 4 of core dump routine
     * Clear 300-332 to make sure 330 isn't a zero.  Fill
     * in the dots and numbers 210-330, print them.
               ORG  1
               DCW  @.......@
     DNUM      DCW  @210@
               DC   #1
     DSTART    CS   332              ENSURE 330 IS NOT @0@
                  N00
               NOP
     DLOAD     LCA  DNUM,210         LOAD NUM TO PRINT
     DLOAD2    LCA                   LOAD DOTS
               CW   C8
               A    DREAD+1,DNUM     ADD 10 T0 NUM
               BCE  DDONE,330,0      DONE?
               A    DREAD+1,DLOAD+6  ADD 10 TO LOAD PLACE
               LCA  2,332            LAST TWO DOTS TO PRINT
               B    DLOAD            AROUND AGAIN
     DDONE     CW   DLOAD2
               W
                  N0
               CC   J                SKIP ONE LINE
     DREAD     R    ESTART           READ THE NEXT CARD
               DCW  #1
               JOB  Card 5 of core dump routine
     * Clear 300-332. Remember whether 101 had a word mark.
     * Set one so we can load from 101 upward.  Load 101-200
     * and its word marks to 201-300.  Clear (or don't
     * clear) the word mark in 201.  Print.  Print word marks.
               ORG  1
     EHAVWM    MCW  ENOP,ECW         CHANGE CW TO NOP
               B    ELOOP
     ESTART    SW   E1
               NOP
     E1        CS   332
               NOP
               BW   EHAVWM,101       WM IN 101?
               SW   101              NO, SET ONE
     ELOOP     LCA  101,201          LOAD TO PRINT AREA
               BCE  ECW,ELOOP+4,3    STORING AT 300 YET?
               A    EREAD,ELOOP+3    UPDATE FROM ADDRESS
               A    EREAD,ELOOP+6    UPDATE TO ADDRESS
               B    ELOOP            NO
     ECW       CW   201              OR MAYBE NOT
               W
                  2)                 PRINT THE WORD MARKS
                  N0
     EREAD     R    FSTART           READ THE NEXT CARD
     ENOP      NOP
               JOB  Card 6 of core dump routine
     * Clear 300 to make sure it isn't zero.  Fill in the
     * dots and numbers 110-200.  Print them.
               ORG  1
               DCW  @.......@
     FNUM      DCW  @110@
               DC   #1
     FSTART    CS   300              ENSURE 300 ISN'T 0
               NOP
               SW   FLOAD2
               NOP
     FLOAD     LCA  FNUM,210         LOAD NUM TO PRINT
     FLOAD2    LCA                   LOAD THE DOTS
               NOP  0
               A    FREAD+1,FNUM     ADD 10 T0 NUM
               BCE  FDONE,300,0      DONE?
               A    FREAD+1,FLOAD+6  ADD 10 TO LOAD PLACE
               NOP  0,0
               B    FLOAD            AROUND AGAIN
     FDONE     CW   FLOAD2
               W
                  N0
               CC   J                SKIP ONE LINE
     FREAD     R    GSTART           READ THE NEXT CARD
               NOP
               JOB  Card 7 of core dump routine
     * Clear 300.  Remember whether 81 had a word mark.  Set
     * one.  Load 81-99 and its word marks to 281-299.
     * Clear (or don't clear) the word mark in 281.  Print.
     * Print word marks.
               ORG  1
     GHAVWM    MCW  GNOP,GCW         CHANGE CW TO NOP
               B    GLOOP
               DCW  #4
               DCW  #1
     GSTART    CS   300
               CS
               BW   GHAVWM,81        WM IN 81?
               SW   81               NO, SET ONE
     GLOOP     LCA  81,201           LOAD TO PRINT AREA
               BCE  GCW,GLOOP+4,3    STORING AT 300 YET?
               A    GREAD,GLOOP+3    UPDATE FROM ADDRESS
               A    GREAD,GLOOP+6    UPDATE TO ADDRESS
               B    GLOOP            NO
     GCW       CW   281              OR MAYBE NOT
               W
                  2)                 PRINT THE WORD MARKS
                  N0
     GREAD     R    HSTART           READ THE NEXT CARD
     GNOP      NOP
               JOB  Card 8 of core dump routine
     * Load index register identification to 281-300.
               ORG  1
     HDOTS     DCW  @......*@
     HINDX1    DCW  @1*..@
               DCW  @*2*.@
     H1        DCW  @.@
     HINDX     DCW  @*3*.@
               DC   #1
     H2        DCW  #1
     H3        DC   #7
     HSTART    SW   H4
               CW   HDOTS+1,HINDX+1
               CW   H2,H1+1
     H4        CW
               LCA  HINDX,300        MOVE XR ID TO 300
               SW   H1,H2+1
               R    ISTART           READ THE NEXT CARD
               DCW  #4
               DCW  #1
               DCW  #2
               DCW  #2
               DCW  #4
               DCW  #1
               JOB  Card 9 of core dump routine
     * Load sense switch identifiers to 201-234.
               ORG  1
     ISSTXT    DCW  @SENSE SWS   ON@
               DC   #1
               DCW  #7
               DCW  #7
     IOFF      DCW  @OFF@
               DC   #1
               DCW  #7
               DCW  #7
               DCW  #1
     ISTART    LCA  ISSTXT,214       LOAD SS ON TEXT TO 214
               LCA  IOFF,234         LOAD SS OFF
               CW   C15
               CW   C12
               NOP
               SW   JSTART
               R    JSTART           READ THE NEXT CARD
               DCW  #1
               JOB  Card 10 of core dump routine
     * Put list of on and off sense switches in 236... (on)
     * or 216... (off).
               ORG  1
     JTWO      DCW  2
               DC   #9
     JSTART    BSS  JON,B            SWITCH ON?
     JOFF      M    JB,236           NO, MOVE SS ID TO OFF
               A    JTWO,JOFF+6      INCR OFF ID SPOT
               B    JBOTH
     JON       M    JB,216           YES, MOVE SS ID TO ON
               A    JTWO,JON+6
               NOP
     JBOTH     A    JREAD,JSTART+4   INCR SWITCH TEST
               A    JREAD,JB         INCR SS ID
               BCE  JREAD,JB,H       DONE?
               NOP
               B    JSTART           AROUND AGAIN
     JREAD     R    KSTART           READ THE NEXT CARD
     JB        DCW  @B@              SS ID TO PRINT
               JOB  Card 11 of core dump routine
     * Save comparison indicators in 100..125.
               ORG  1
     KUNEQ     DCW  @   UNEQUAL@
     KEQUAL    DCW  @EQUAL@
     KHIGH     DCW  @ HIGH@
               DC   #2
     KLOW      DCW  @LOW@
               DC   #4
               DCW  #4
     KSTART    LCA  KUNEQ,110        SAVE  UNEQUAL
               LCA  KEQUAL,115       SAVE  EQUAL
               NOP
               LCA  KHIGH,120        SAVE  HIGH
               LCA  KLOW,125         SAVE  LOW
               NOP  0,0,0
               NOP
               NOP  0
               R    LSTART
               DCW  #1
               JOB  Card 12 of core dump routine
     * Move appropriate comparison indicators to 247..265.
               ORG  1
     LINC      DCW  5003             INC FOR TWO ADDRS
               DC   #6
     LSTART    BU   LINDON           INDICATOR ON?
               NOP  0,0
               NOP  0,0
               B    LINDOF           NO
               DCW  #7
     LINDON    MCW  110,256          MOVE INDICATOR TO PR
               NOP
     LINDOF    A    LREAD,LSTART+4   INCR INDICATOR TEST
               A    LINC,LINDON+6    INCR BOTH ADDRS
               BCE  LREAD,LSTART+4,V  DONE?
               NOP
               B    LSTART           AROUND AGAIN
     LREAD     R    MSTART           READ THE NEXT CARD
               DCW  #1
               JOB  Card 13 of core dump routine
     * Construct overflow off (or on) indicator.
     * Move it to 268..277.
               ORG  1
     MOVFF     DCW  @OVFLO OFF@
               DC   #1
     MSTART    BAV  MOVFL            OVERFLOW?
     MOVON     DCW  @N @             NOP, AND  N  FOR MSG
               DC   @00000@          REST OF THE NOP INSTR
               NOP  0,0
               B    MOVFON
               DCW  #7
     MOVFL     MCW  MOVON,MOVFF      CHANGE  OFF  TO  ON
               NOP
     MOVFON    MCW  MOVFF,277        MOVE MSG TO PRINT AREA
               NOP  0,0
               NOP  0,0,0
               NOP
               NOP  0
               R    NSTART
               DCW  #1
               JOB  Card 14 of core dump routine
     * Move clear routines for 200-299 and 0-80 to
     * 101-116.  Print indicators. Clear 200-299 and 0-80.
     * Set word mark in 1, read a card and branch to 1.
               ORG  1
               DCW  @/299080,0@      CLEAR STORAGE ROUTINE
               DCW  @01100@          SEE SOURCE CODE BELOW
     NCLEAR    DCW  @1@
               DC   #6
               DCW  #7
               DCW  #4
     NSTART    SW   N1,N2
               CW   JSTART,NCLEAR
               CW
               LCA  NCLEAR,NCLEND-1
               SW   NCLEND,NCL3
               SW   NCL2
     N1        SW   NCL1
               W
               CC   L                SKIP THREE LINES
     N2        CC   K                SKIP TWO LINES
               B    NCLBEG
               DCW  #1
     * Routine to clear 200-299 and 0-80, then set a word
     * mark at 1, read a card and branch to 1.  The text of
     * this routine is punched in cc 1-16 of card N.
               ORG  101
     NCLBEG    CS   299
     NCL1      CS   80
     NCL2      SW   1
     NCL3      R    OSTART
     NCLEND    DCW  #1
               JOB  Move data and word marks to print area
     * Routine to move data and word marks to print area.
     * Convert group marks to ).
     * Read a card when done.
               ORG  78
     DWSTRT    BU   WSTART
     DW1       B    SWITCH
     X1        DCW  @X00@
     DFF       DCW  @FF@
     X2        DCW  333
     DW3       DCW  01
     X3        DC   033
     DWPRNT    W
     DW5       CS   332
               CS
     DWLOOP    SW   212+X3           ASSUME DATA HAS WM
     DW7       MCW  0+X2,212+X3      MOVE THE DATA
     DW8       BW   GOTWM,0+X2       DID IT HAVE WM?
     LOZ       CW   212+X3           NO, CLEAR ASSUMED WM
     GOTWM     BCE  GOTGM,0+X3,"     GROUP MARK?
     DW9       B    NOGM             NO
     GOTGM     MCW  LOZ,212+X3       REPL GROUP MARK WITH )
     NOGM      A    DWREAD,X3        BUMP X3
               A                     BUMP X2 -- MA FOR BIG CORE
     DW12      BCE  DWLOOP,X3-2,0    AROUND AGAIN
               CW   DWSTRT           CHANGED LATER TO W 060
     SWITCH    NOP  080              CHANGED TO N OR /
     DW14      SW   PSTART
     DWREAD    R    PSTART           READ THE NEXT CARD
     DWDOTS    DCW  @........@
     DWLOW     DCW  49               LOW ORDER TWO DIGITS
     DWBEGN    DCW  00333            BEGIN OF LINE
     DWAREA    DC   @-AREA @
               JOB  Card 15 of core dump routine
     * Set word marks, move some code to 164-200.
               ORG  1
     OSTART    SW   O1,O2
     O1        SW   O3,O4
     O2        SW   O5,O6
     O3        NOP
     O4        SW   O7
     O5        SW   O8
     O6        LCA  O9,DWAREA
     O7        R    PSTART
     O8        DCW  @)@              CW JUST BEFORE SWITCH
     O9        DC   @078N080,0011001........4900333-AREA @
               JOB  Card 16 of core dump routine
     * Move some code to 125-163, set some word marks.
               ORG  1
     PSTART    LCA  P1,DW12+7
               SW   DWBEGN-4,DWLOW-1
               SW   DW12,DW12
               SW
               SW   DWDOTS-7
               SW   DWREAD
               SW   DW14,SWITCH
               R    QSTART
               DCW  @)2A2B1410-0"B148M1252A2A176099A@
     P1        DC   @B1060970@
               JOB  Card 17 of core dump routine
     * Move some code to 87-124, set some word marks.
               ORG  1
     QSTART    LCA  Q1,DW8+7
               SW   NOGM,GOTGM
               SW   DW5,DWLOOP
               SW
               SW   DW9
               SW   GOTWM
               SW   DW8,DW7
               R    RSTART
               DCW  @X00FF333010332/332/,2A2M0-02A2@
     Q1        DC   @V1290-01@
               JOB  Card 18 of core dump routine
     * Set some word marks, move some code to 78-86
     * (actually part of an instruction)
               ORG  1
     RSTART    SW   R1,SDONE
               SW   S1,SLOW-6
               LCA  R5,DW1+3
               NOP
               CW   O8
               CW   O5
               SW   X2+1,X2-2
               SW   X1+1,DW1
     R1        R    SSTART
               DCW  #11
     R5        DCW  @   1/B168@
               JOB  Card 19 of core dump routine
     * Move "00333-AREA " with zero suppression to
     * 201-211.  Update "xxxxx-AREA " to 00400.  Put
     * .....39 - ........99 in print area.  Go to print it
     * and to set up to print 333-399 area.
               ORG  1
     SSTART    MCS  DWAREA,211
               MCW  SADDR,DWBEGN     REPLACE 333 WITH 400
     SLOOP     LCA  DWLOW,261        FIRST DOTS OFFSET 49
               LCA                   MOVE THE DOTS
               BCE  SDONE,DWLOW-1,9  DONE FILLING DOTS?
               A    DWREAD,DWLOW-1   BUMP DOTS ADDR BY 10
               A    DWREAD,SLOOP+5   BUMP DOTS POINT BY 10
               B    SLOOP            AROUND AGAIN
     SDONE     LCA  SLOW,251         PUT ......39 IN PRINT
     S1        B    DWPRNT           GO PRINT IT
     SLOW      DCW  @.....39@
     SADDR     DC   00400
               JOB  Test for a blank x00-x99 area
     * Reset ........xx to ........09.  Set starting
     * position for dots to 221.  Check for a blank line
     * without word marks.
               ORG  333
     TBSTRT    MN   DW14+1,DWLOW-1   ZERO TO ........x9
     TB1       MN   WLOOP-1,WLOOP+4  322 BACK TO 222
     TB2       MCW  X2,X1
     TB3       SW   323
     TBLOOP    C    9+X1,332         BLANK AREA?
               BU   DWPRNT           NO, PRINT
     TB4       BW   DWPRNT,0+X1      WORDMARK? NO, PRINT
     TB5       BCE  WRET,X1-1,9      DONE?
     TB6       A    X3-2,X1          BUMP X1 BY 10 -- MA FOR BIG CORE
     TB7       B    TBLOOP           AROUND AGAIN
     MSIZ      DCW  @014@            MEMORY SIZE / 100
               JOB  Card 20 of core dump routine
     * Move some code to 333-364.  Set some word marks.
               ORG  1
     TSTART    CW   S1,SLOW-6
               LCA  T2,TBLOOP+6
               SW   TB1,TB2
               NOP
               NOP  0,0,0
     T1        SW   TB3,TBLOOP
               CW   T1,T1
               R    USTART
     T2        DCW  @D173188D014019M094089,323C0'9332@
               JOB  Card 21 of core dump routine
     * Move some code to 365-396.  Set some word marks.
               ORG  1
     USTART    LCA  U2,TB7+3
               SW   U1,V1
               SW   TB4,TB5
               NOP
               SW   TB6,TB7
     U1        NOP  0,0,0
               SW   DWSTRT,DWSTRT
               R    VSTART
               DCW  @B@              B OF  BU DWPRNT
     U2        DC   @100/V1000'01B0490889A097089B358@
               JOB  Card 22 of core dump routine
     * Set some word marks.  Change SWITCH to 2060N
     * Change first ........x9 to ........09.
     * Move the core size to 396-399.
               ORG  1
     VSTART    SW   XRET,W4
               SW   W5,WTEST
               M    VSWICH,SWITCH+3  CHANGE SWITCH TO 2060
               M
     V1        MN   DWREAD+1,DWLOW-1  X9 TO ........09
               NOP  0,0,0
               LCA  VCORE,MSIZ       SAVE CORE SIZE
               R    WSTART           READ THE NEXT CARD
               W    XRET             NEW FOR SWITCH
     VSWICH    NOP
               DC   @  @
     VCORE     DCW  014              CORE SIZE / 100
               DC   00               TENS DIGIT OF CORE
               DCW  @  CORE SIZE@    JUST A COMMENT
               JOB  Card 23 of core dump routine
     * Move "xxxxx-AREA " with zero supression to 201-211.
     * Update xxxxx by 100.
     * Put ........09 - ........99 to 212-311.
     * Go put data and word marks in the print area and
     * print the data.  Print the word marks on return.
               ORG  1
     WSTART    MCS  DWAREA,211
               A    DWREAD,DWBEGN-2  BUMP ADDR BY 100
     WLOOP     LCA  DWLOW,221        ........X9 TO PRINT
               LCA
               A    DWREAD,WLOOP+5   BUMP ........X9 POSN
               BCE  TBSTRT,DWLOW-1,9  DONE WITH ........X9?
               A    DWREAD,DWLOW-1   BUMP X IN ........X9
               B    WLOOP            AROUND AGAIN
     WRET      A    DWREAD+2,X2      BUMP CORE START BY 100 - MA IF BIG
               B    WTEST
     XRET         2)                 PRINT THE WORD MARKS
     W4        CC   J                SKIP ONE LINE
     W5        MN   DW14+1,X3-2      ZERO TO HIGH DIGIT
     WTEST     C    MSIZ,DWBEGN-2    DONE?
               BU   WSTART           DOESN'T FIT, BUT OK
     *                               (rest is on card R)
               JOB  Card 24 of core dump routine
     * Print whether Sense switch A is on.
               ORG  1
     YSTART    SW   Y1,Y3
               CW   XRET,WTEST
               SW   Y2,YHALT
               SW
               CW   W4,DWSTRT
               NOP
     Y1        CS   332
               CS
     Y2           N0
               LCA  YSWA,213
               SW   YHALT+4
               BSS  YPRINT,A         SS A ON?
     Y3           N0
               MCW  DFF,214          CHANGE MSG TO  OFF
     YPRINT    W
     YHALT     H    YHALT            ALL DONE
     YSWA      DCW  @SENSE SW A ON@
               JOB  Alternative card 12 of core dump routine
     * Clear routine that gets moved to 81-92
               ORG  81
               CS   80
     SETWM2    SW   1
     READX2    R    1
     *
     * First card of two-card alternative sequence for cards 12-14
     * Move appropriate comparison indicators to 247..265.  Move
     * R 001  to 92.
               ORG  1
               SFX  L
     INC       DCW  5003             INC FOR TWO ADDRS
               DC   #6
     START     BU   INDON            INDICATOR ON?
               LCA  MREAD+3,READX2+3  SOME INDICATOR WILL BE OFF
               B    INDOF
               DC   #3               B WITH BLANK D NEEDS NO WM
     MREAD     R    001              GETS MOVED TO 89-92
               DCW  #7
     INDON     MCW  110,256          MOVE INDICATOR TO PR
               NOP
     INDOF     A    READ,START+4    INCR INDICATOR TEST
               A    INC,INDON+6     INCR BOTH ADDRS
               BCE  READ,START+4,V  DONE?
               NOP
               B    START            AROUND AGAIN
     READ      R    STARTM           READ THE NEXT CARD
               DCW  #1
               JOB  Alternative card 13 of core dump routine
     * Second card of two-card alternative sequence for cards 12-14
     * Construct overflow off (or on) indicator.  Move it to 268..277.
     * Move CS 80, SW 1 to 81-88.  Set word marks for it.
     * Print indicators. Clear 200-299 and 0-80.  Set word mark in 1,
     * read a card and branch to 1.
               SFX  M
               ORG  1
     OVMSG     DCW  @OVFLO ON @
               DC   #1
     START     BAV  OVON             OVERFLOW ON?
               MCW  OVFF,OVMSG       NO, CHANGE ON TO OFF
     OVON      MCW  OVMSG,277        MOVE MESSAGE TO PRINT AREA
               SW   OVCC             NEED A WM
               LCA  OVCLR,SETWM2+3   MOVE PART OF CLEAR ROUTINE
               SW   SETWM2,READX2+4  IT NEEDS A WM
               NOP
               B    OVFIN
               DCW  #3               BRANCH WITH BLANK D NEEDS NO WM
     OVFF      DCW  @FF@
               DC   #5
               CS   80               GETS MOVED TO 81-84
     OVCLR     DC   @,001@           GETS MOVED TO 85-88
     OVFIN     W
               CC   L                SKIP 3 LINES
     OVCC      CC   K                SKIP 2 LINES
               CS   299
               NOP
               END

