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 Linden Sims. A team of volunteers performed the transcription and proof-reading. 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 collection in the Internet Archive. Report any problems by creating "issues" at the Virtual AGC Project's GitHub Repository.

Notations on the program listing read, in part:

	GAP:  ASSEMBLE REVISION 56 OF AGC PROGRAM ZERLINA BY ZOROASTER
	9:12 OCT. 21,1970
Note that the date is the date of the printout, not the date of the program revision.

016647,000002:                                                                                                  ## Copyright:   Public domain.
016648,000003:                                                                                                  ## Filename:    SYSTEM_TEST_STANDARD_LEAD_INS.agc
016649,000004:                                                                                                  ## Purpose:     A log section of Zerlina 56, the final revision of
016650,000005:                                                                                                  ##              Don Eyles's offline development program for the variable 
016651,000006:                                                                                                  ##              guidance period servicer. It also includes a new P66 with LPD 
016652,000007:                                                                                                  ##              (Landing Point Designator) capability, based on an idea of John 
016653,000008:                                                                                                  ##              Young's. Neither of these advanced features were actually flown,
016654,000009:                                                                                                  ##              but Zerlina was also the birthplace of other big improvements to
016655,000010:                                                                                                  ##              Luminary including the terrain model and new (Luminary 1E)
016656,000011:                                                                                                  ##              analog display programs. Zerlina was branched off of Luminary 145,
016657,000012:                                                                                                  ##              and revision 56 includes all changes up to and including Luminary
016658,000013:                                                                                                  ##              183. It is therefore quite close to the Apollo 14 program,
016659,000014:                                                                                                  ##              Luminary 178, where not modified with new features.
016660,000015:                                                                                                  ## Reference:   pp. 375-377
016661,000016:                                                                                                  ## Assembler:   yaYUL
016662,000017:                                                                                                  ## Contact:     Ron Burkey <info@sandroid.org>.
016663,000018:                                                                                                  ## Website:     www.ibiblio.org/apollo/index.html
016664,000019:                                                                                                  ## Mod history: 2017-07-28 MAS  Created from Luminary 210.
016665,000020:                                                                                                  ##              2017-08-22 RSB  Transcribed.
016666,000021: 

Page 375

016668,000023: 22,3242  E5,1642                                  EBANK=   XSM                                   
016669,000024: 
016670,000025: 33,2031                                           BANK     33                                    
016671,000026: 04,2000                                           SETLOC   E/PROG                                
016672,000027: 04,2000                                           BANK                                           
016673,000028: 
016674,000029: 04,2570                                           COUNT*   $$/P07                                
016675,000030: 
016676,000031:                                                                                                  #           SPECIAL PROGRAMS TO EASE THE PANGS OF ERASABLE MEMORY PROGRAMS.
016677,000032: 
016678,000033:                                                                                                  #  E/BKCALL   FOR DOING BANKCALLS FROM AND RETURNING TO ERASABLE.
016679,000034: 
016680,000035:                                                                                                  #           THIS ROUTINE IS CALLABLE FROM ERASABLE OR FIXED.  LIKE BANKCALL, HOWEVER, SWITCHING BETWEEN S3 AND S4
016681,000036:                                                                                                  #  IS NOT POSSIBLE.
016682,000037: 
016683,000038:                                                                                                  #           THE CALLING SEQUENCE IS:
016684,000039: 
016685,000040:                                                                                                  #                                                   TC     BANKCALL
016686,000041:                                                                                                  #                                                   CADR   E/BKCALL
016687,000042:                                                                                                  #                                                   CADR   ROUTINE         WHERE YOU WANT TO GO IN FIXED.
016688,000043:                                                                                                  #                                                   RETURN HERE FROM DISPLAY TERMINATE, BAD STALL OR TC Q.
016689,000044:                                                                                                  #                                                   RETURN HERE FROM DISPLAY PROCEED OR GOOD RETURN FROM STALL.
016690,000045:                                                                                                  #                                                   RETURN HERE FROM DISPLAY ENTER OR RECYCLE.
016691,000046: 
016692,000047:                                                                                                  #           THIS ROUTINE REQUIRES TWO ERASABLES (EBUF2, +1) IN UNSWITCHED WHICH ARE UNSHARED BY INTERRUPTS AND
016693,000048:                                                                                                  #  OTHER EMEMORY PROGRAMS.
016694,000049: 
016695,000050:                                                                                                  #           A + L ARE PRESERVED THROUGH BANKCALL AND E/BKCALL.
016696,000051: 
016697,000052: 04,2570           52134        E/BKCALL           DXCH     BUF2                                  #  SAVE A,L AND GET DP RETURN.
016698,000053: 04,2571           53167                           DXCH     EBUF2                                 #  SAVE DP RETURN.
016699,000054: 04,2572           25166                           INCR     EBUF2                                 #  RETURN +1 BECAUSE DOUBLE CADR.
016700,000055: 04,2573           30006                           CA       BBANK                                 
016701,000056: 04,2574           75012                           MASK     LOW10                                 #  GET CURRENT EBANK.  (SBANK SOMEDAY)
016702,000057: 04,2575           27167                           ADS      EBUF2      +1                         #  FORM BBCON.  (WAS FBANK)
016703,000058: 04,2576           51166                           NDX      EBUF2                                 
016704,000059: 04,2577           27777                           CA       0          -1                         #  GET CADR OF ROUTINE.
016705,000060: 04,2600           04622                           TC       SWCALL                                #  GO TO ROUTINE, SETTING Q TO SWRETURN
016706,000061:                                                                                                  #  AND RESTORING A + L.
016707,000062: 04,2601           02605                           TC       +4                                    #  TX Q, V34, OR BAD STALL RETURN.
016708,000063: 04,2602           02604                           TC       +2                                    #  PROCEED OR GOOD STALL RETURN.
016709,000064: 04,2603           25166                           INCR     EBUF2                                 #  ENTER OR RECYCLE RETURN.
016710,000065: 04,2604           25166                           INCR     EBUF2                                 
016711,000066: 04,2605           53167        E/SWITCH           DXCH     EBUF2                                 
016712,000067: 04,2606           52006                           DTCB                                           
016713,000068: 

Page 376

016715,000070:                                                                                                  #  E/CALL          FOR CALLING A FIXED MEMORY INTERPRETIVE SUBROUTINE FROM ERASABLE AND RETURNING TO ERASABLE.
016716,000071: 
016717,000072:                                                                                                  #           THE CALLING SEQUENCE IS...
016718,000073: 
016719,000074:                                                                                                  #                                                   RTB
016720,000075:                                                                                                  #                                                          E/CALL
016721,000076:                                                                                                  #                                                   CADR   ROUTINE         THE INTERPRETIVE SUBROUTINE YOU WANT.
016722,000077:                                                                                                  #                                                                          RETURNS HERE IN INTERPRETIVE.
016723,000078: 
016724,000079: 04,2607           22164        E/CALL             LXCH     LOC                                   #  ADRES -1 OF CADR.
016725,000080: 04,2610           50001                           INDEX    L                                     
016726,000081: 04,2611           30001                           CA       L                                     #  CADR IN A.
016727,000082: 04,2612           24001                           INCR     L                                     
016728,000083: 04,2613           24001                           INCR     L                                     #  RETURN ADRES IN L.
016729,000084: 04,2614           53167                           DXCH     EBUF2                                 #  STORE CADR AND RETURN.
016730,000085: 04,2615           06051                           TC       INTPRET                               
016731,000086: 04,2616           77624                           CALL                                           
016732,000087: 04,2617           01166                                    EBUF2                                 #  INDIRECTLY EXECUTE ROUTINE.  IT MUST
016733,000088: 04,2620           77776                           EXIT                                           #  LEAVE VIA RVQ OR EQUIVALENT.
016734,000089: 04,2621           23167                           LXCH     EBUF2      +1                         #  PICK UP RETURN.
016735,000090: 04,2622           16053                           TCF      INTPRET    +2                         #  SET LOC AND RETURN TO CALLER.
016736,000091: 

Page 377

016738,000093:                                                                                                  #  E/JOBWAK        FOR WAKING UP ERASABLE MEMORY JOBS.
016739,000094: 
016740,000095:                                                                                                  #           THIS ROUTINE MUST BE CALLED IN INTERRUPT OR WITH INTERRUPTS INHIBITED.
016741,000096: 
016742,000097:                                                                                                  #           THE CALLING SEQUENCE IS:
016743,000098: 
016744,000099:                                                                                                  #                                                   INHINT
016745,000100:                                                                                                  #                                                     .
016746,000101:                                                                                                  #                                                     .
016747,000102:                                                                                                  #                                                   CA     WAKEADR         ADDRESS OF SLEEPING JOB
016748,000103:                                                                                                  #                                                   TC     IBNKCALL
016749,000104:                                                                                                  #                                                   CADR   E/JOBWAK
016750,000105:                                                                                                  #                                                     .                    RETURNS HERE
016751,000106:                                                                                                  #                                                     .
016752,000107:                                                                                                  #                                                     .
016753,000108:                                                                                                  #                                                   RELINT                 IF YOU DID AN INHINT.
016754,000109: 
016755,000110: 33,2031                                           BANK     33                                    
016756,000111: 04,2000                                           SETLOC   E/PROG                                
016757,000112: 04,2000                                           BANK                                           
016758,000113: 
016759,000114: 04,2623                                           COUNT*   $$/P07                                
016760,000115: 
016761,000116: 04,2623           05137        E/JOBWAK           TC       JOBWAKE                               #  ARRIVE IWTH ADRES IN A.
016762,000117: 04,2624           44741                           CS       BIT11                                 
016763,000118: 04,2625           50064                           NDX      LOCCTR                                
016764,000119: 04,2626           26164                           ADS      LOC                                   #  KNOCK FIXED MEMORY BIT OUT OF ADRES.
016765,000120: 04,2627           00072                           TC       RUPTREG3                              #  RETURN
016766,000121: 

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