Source Code

These source-code files were transcribed from a printout in Don Eyles's personal collection, scanned by archive.org, and financially sponsored by Mike Higgins. A team of volunteers performed the transcription and proof-reading. Note that the scanned page images are available at the Virtual AGC Project website, as well as higher-quality (but much larger) images at the Virtual AGC Project's section on archive.org. Report any problems by creating "issues" at the Virtual AGC Project's GitHub Repository.

Notations on the program listing read, in part:

	YUL SYSTEM FOR BLK2: REVISION 0 OF PROGRAM RETRED44 BY NASA 2021100
	JUL 9, 1965
Note that the date is the date of the printout, not the date of the program revision.

004621,000002:                                                                                                  ## Copyright:   Public domain.
004622,000003:                                                                                                  ## Filename:    T4RUPT_PROGRAM.agc
004623,000004:                                                                                                  ## Purpose:     Part of the source code for Retread 44 (revision 0). It was
004624,000005:                                                                                                  ##              the very first program for the Block II AGC, created as an
004625,000006:                                                                                                  ##              extensive rewrite of the Block I program Sunrise.
004626,000007:                                                                                                  ##              This file is intended to be a faithful transcription, except
004627,000008:                                                                                                  ##              that the code format has been changed to conform to the
004628,000009:                                                                                                  ##              requirements of the yaYUL assembler rather than the
004629,000010:                                                                                                  ##              original YUL assembler.
004630,000011:                                                                                                  ## Reference:   pp. 128-130
004631,000012:                                                                                                  ## Assembler:   yaYUL
004632,000013:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
004633,000014:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
004634,000015:                                                                                                  ## Mod history: 2016-12-13 MAS  Created from Aurora 12 version.
004635,000016:                                                                                                  ##              2016-12-18 MAS  Transcribed, then fixed typos.
004636,000017:                                                                                                  ##              2016-12-27 RSB  Proofed comment text using octopus/ProoferComments,
004637,000018:                                                                                                  ##                              but no errors found.
004638,000019: 

Page 128

004640,000021: 01,3052           54016        T4RUPT             TS       BANKRUPT                              
004641,000022: 01,3053           56002                           XCH      Q                                     
004642,000023: 01,3054           54012                           TS       QRUPT                                 
004643,000024: 01,3055           37653                           CAF      ZERO                                  
004644,000025: 01,3056           00006                           EXTEND                                         
004645,000026: 01,3057           01010                           WRITE    OUT0                                  
004646,000027: 01,3060           11020                           CCS      DSRUPTSW                              
004647,000028: 01,3061           03063                           TC       SPECRUPT                              #  ZERO OUT0 10 MS AFTER REGULAR T4RUPT.
004648,000029: 01,3062           03072                           TC       T4RUPTA                               
004649,000030: 
004650,000031: 01,3063           37653        SPECRUPT           CAF      ZERO                                  
004651,000032: 01,3064           55020                           TS       DSRUPTSW                              
004652,000033: 01,3065           33071                           CAF      110MRUPT                              #  RE ESTABLISH 120 MS PERIOD
004653,000034: 01,3066           54027                           TS       TIME4                                 
004654,000035: 01,3067           04325                           TC       RESUME                                
004655,000036: 01,3070           37764        120MRUPT           OCT      37764                                 
004656,000037: 01,3071           37765        110MRUPT           OCT      37765                                 
004657,000038: 
004658,000039: 
004659,000040: 
004660,000041:                                                                                                  #  RELTAB IS A PACKED TABLE. RELAYWORD CODE IN UPPER 4 BITS, RELAY CODE
004661,000042:                                                                                                  #  IN LOWER 5 BITS.
004662,000043: 
004663,000044:    4333                                           SETLOC   ENDWAITF                              #  IN F/F
004664,000045: 
004665,000046:    4333           04025        RELTAB             OCT      04025                                 
004666,000047:    4334           10003                           OCT      10003                                 
004667,000048:    4335           14031                           OCT      14031                                 
004668,000049:    4336           20033                           OCT      20033                                 
004669,000050:    4337           24017                           OCT      24017                                 
004670,000051:    4340           30036                           OCT      30036                                 
004671,000052:    4341           34034                           OCT      34034                                 
004672,000053:    4342           40023                           OCT      40023                                 
004673,000054:    4343           44035                           OCT      44035                                 
004674,000055:    4344           50037                           OCT      50037                                 
004675,000056:    4345           54000                           OCT      54000                                 
004676,000057:    4346           60000        RELTAB11           OCT      60000                                 
004677,000058: 
004678,000059: 
004679,000060: 
004680,000061:    4347                        ENDT4FF            EQUALS                                         
004681,000062: 
004682,000063: 
004683,000064: 
004684,000065: 01,3072                                           SETLOC   110MRUPT   +1                         #  IN BANK
004685,000066: 
004686,000067: 01,3072           33070        T4RUPTA            CAF      120MRUPT                              
004687,000068: 01,3073           54027                           TS       TIME4                                 
004688,000069: 01,3074           10675        CDRVE              CCS      DSPTAB     +11D                       
004689,000070: 01,3075           03104                           TC       DSPOUT                                

Page 129

004691,000072: 01,3076           03104                           TC       DSPOUT                                
004692,000073: 01,3077           56675                           XCH      DSPTAB     +11D                       
004693,000074: 01,3100           74503                           MASK     LOW11                                 
004694,000075: 01,3101           54675                           TS       DSPTAB     +11D                       
004695,000076: 01,3102           64346                           AD       RELTAB11                              
004696,000077: 01,3103           03143                           TC       DSPLAYC                               
004697,000078: 

Page 130

004699,000080:                                                                                                  #  DSPOUT PROGRAM. PUTS OUT DISPLAYS.
004700,000081: 
004701,000082: 01,3104           10656        DSPOUT             CCS      NOUT                                  #  ENTERED IN INTERRUPTED STATE AT END OF
004702,000083: 01,3105           03107                           TC       +2                                    #                          DSRUPT
004703,000084: 01,3106           04325                           TC       LVDSRUPT                              
004704,000085: 01,3107           54656                           TS       NOUT                                  
004705,000086: 01,3110           47653                           CS       ZERO                                  
004706,000087: 01,3111           54624                           TS       DSRUPTEM                              #  SET TO -0 FOR 1ST PASS THRU DSPTAB
004707,000088: 01,3112           56714                           XCH      DSPCNT                                
004708,000089: 01,3113           67654                           AD       NEG0                                  #  TO PREVENT +0
004709,000090: 01,3114           54714                           TS       DSPCNT                                
004710,000091: 01,3115           50714        DSPSCAN            INDEX    DSPCNT                                
004711,000092: 01,3116           10662                           CCS      DSPTAB                                
004712,000093: 01,3117           10714                           CCS      DSPCNT                                #  IF DSPTAB ENTRY +, SKIP
004713,000094: 01,3120           03113                           TC       DSPSCAN    -2                         #  IF DSPCNT +, AGAIN
004714,000095: 01,3121           03132                           TC       DSPLAY                                #  IF DSPTAB ENTRY -, DISPLAY
004715,000096: 01,3122           00012        TABLNTH            OCT      12                                    #  DEC 10   LENGTH OF DSPTAB
004716,000097: 01,3123           10624                           CCS      DSRUPTEM                              #  IF DSRUPTEM=+0,2ND PASS THRU DSPTAB
004717,000098: 01,3125                                           LOC      +1                                    #  (DSPCNT=0). +0 INTO NOUT, RESUME
004718,000099: 01,3125           54656                           TS       NOUT                                  
004719,000100: 01,3126           04325                           TC       LVDSRUPT                              
004720,000101: 01,3127           54624                           TS       DSRUPTEM                              #  IF DSRUPTEM=-0,1ST PASS THRU DSPTAB
004721,000102: 01,3130           33122                           CAF      TABLNTH                               #  (DSPCNT=0). +0 INTO DSRUPTEM. PASS AGAIN
004722,000103: 01,3131           03114                           TC       DSPSCAN    -1                         
004723,000104: 
004724,000105: 01,3132           67646        DSPLAY             AD       ONE                                   
004725,000106: 01,3133           50714                           INDEX    DSPCNT                                
004726,000107: 01,3134           54662                           TS       DSPTAB                                #  REPLACE POSITIVELY
004727,000108: 01,3135           74503                           MASK     LOW11                                 #  REMOVE BITS 12 TO 15
004728,000109: 01,3136           54624                           TS       DSRUPTEM                              
004729,000110: 01,3137           34475                           CAF      HI5                                   
004730,000111: 01,3140           50714                           INDEX    DSPCNT                                
004731,000112: 01,3141           74333                           MASK     RELTAB                                #  PICK UP BITS 12 TO 15 OF RELTAB ENTRY
004732,000113: 01,3142           60624                           AD       DSRUPTEM                              
004733,000114: 01,3143           00006        DSPLAYC            EXTEND                                         
004734,000115: 01,3144           01010                           WRITE    OUT0                                  
004735,000116: 01,3145           55023                           TS       DISPBUF                               #  THIS WILL BE SENT DOWN NEXT TM CYCLE.
004736,000117: 
004737,000118: 01,3146           37626                           CAF      10MSRUPT                              #  SET T4 TO INTERRUPT IN 10 MS.
004738,000119: 01,3147           54027                           TS       TIME4                                 
004739,000120: 01,3150           37646                           CAF      ONE                                   
004740,000121: 01,3151           55020                           TS       DSRUPTSW                              #  SET FOR SPECRUPT
004741,000122: 
004742,000123: 01,3152           04325                           TC       LVDSRUPT                              
004743,000124: 
004744,000125: 01,3153     4325               LVDSRUPT           EQUALS   RESUME                                
004745,000126: 01,3153     7626               10MSRUPT           =        POSMAX                                

End of include-file T4RUPT_PROGRAM.agc.  Parent file is MAIN.agc