Source Code

018321,000001: # Copyright: Public domain. 018322,000002: # Filename: SYSTEM_TEST_STANDARD_LEAD_INS.agc 018323,000003: # Purpose: Part of the source code for Comanche, build 055. 018324,000004: # It is part of the source code for the Command Module's (CM) 018325,000005: # Apollo Guidance Computer (AGC), Apollo 11. 018326,000006: # Assembler: yaYUL 018327,000007: # Reference: pp. 420-422 018328,000008: # Contact: Onno Hommes <ohommes@cmu.edu>. 018329,000009: # Website: www.ibiblio.org/apollo. 018330,000010: # Mod history: 05/07/09 OH Transcription Batch 1 Assignment 018331,000011: 018332,000012: # The contents of the "Comanche055" files, in general, are transcribed 018333,000013: # from scanned documents. 018334,000014: 018335,000015: # Assemble revision 055 of AGC program Comanche by NASA 018336,000016: # 2021113-051. April 1, 1969. 018337,000017: 018338,000018: # This AGC program shall also be referred to as Colossus 2A 018339,000019: 018340,000020: # Prepared by 018341,000021: # Massachussets Institute of Technology 018342,000022: # 75 Cambridge Parkway 018343,000023: # Cambridge, Massachusetts 018344,000024: 018345,000025: # under NASA contract NAS 9-4065. 018346,000026: 018347,000027: # Refer directly to the online document mentioned above for further information. 018348,000028: # Please report any errors to info@sandroid.org. 018349,000029: 018350,000030: 018351,000031: # Page 420 018352,000032: 22,3151 E5,1671 EBANK= XSM 018353,000033: 018354,000034: 33,2000 BANK 33 018355,000035: 13,2000 SETLOC E/PROG1 018356,000036: 13,2000 BANK 018357,000037: 018358,000038: 13,2036 COUNT* $$/P07 018359,000039: 018360,000040: # SPECIAL PROGRAMS TO EASE THE PANGS OF ERASABLE MEMORY PROGRAMS. 018361,000041: 018362,000042: # E/BKCALL FOR DOING BANKCALLS FROM AND RETURNING TO ERASABLE. 018363,000043: 018364,000044: # THIS ROUTINE IS CALLABLE FROM ERASABLE OR FIXED. LIKE BANKCALL, HOWEVER, SWITCHING BETWEEN S3 AND S4 018365,000045: # IS NOT POSSIBLE. 018366,000046: 018367,000047: # THE CALLING SEQUENCE IS: 018368,000048: 018369,000049: # TC BANKCALL 018370,000050: # CADR E/BKCALL 018371,000051: # CADR ROUTINE # WHERE TO WANT TO GO IN FIXED. 018372,000052: # RETURN HERE FROM DISPLAY TERMINATE, BAD STALL OR TC Q. 018373,000053: # RETURN HERE FROM DISPLAY PROCEED OR GOOD RETURN FROM STALL. 018374,000054: # RETURN HERE FROM DISPLAY ENTER OR RECYCLE. 018375,000055: 018376,000056: # THIS ROUTINE REQUIRES TWO ERASABLES (EBUF2, +1) IN UNSWITCHED WHICH ARE UNSHARED BY INTERRUPTS AND 018377,000057: # OTHER EMEMORY PROGRAMS. 018378,000058: 018379,000059: # A + L ARE PRESERVED THROUGH BANKCALL AND E/BKCALL. 018380,000060: 018381,000061: 13,2036 52134 E/BKCALL DXCH BUF2 # SAVE A,L AND GET DP RETURN. 018382,000062: 13,2037 52365 DXCH EBUF2 # SAVE DP RETURN. 018383,000063: 13,2040 24364 INCR EBUF2 # RETURN +1 BECAUSE DOUBLE CADR. 018384,000064: 13,2041 30006 CA BBANK 018385,000065: 13,2042 75054 MASK LOW10 # GET CURRENT EBANK. (SBANK SOMEDAY) 018386,000066: 13,2043 26365 ADS EBUF2 +1 # FORM BBCON. (WAS FBANK) 018387,000067: 13,2044 50364 NDX EBUF2 018388,000068: 13,2045 27777 CA 0 -1 # GET CADR OF ROUTINE. 018389,000069: 13,2046 04666 TC SWCALL # GO TO ROUTINE, SETTING Q TO SWRETURN 018390,000070: # AND RESTORING A + L. 018391,000071: 13,2047 02053 TC +4 # TX Q, V34, OR BADD STALL RETURN. 018392,000072: 13,2050 02052 TC +2 # PROCEED OR GOOD STALL RETURN. 018393,000073: 13,2051 24364 INCR EBUF2 # ENTER OR RECYCLE RETURN. 018394,000074: 13,2052 24364 INCR EBUF2 018395,000075: 13,2053 52365 E/SWITCH DXCH EBUF2 018396,000076: 13,2054 52006 DTCB 018397,000077: 018398,000078: # Page 421 018399,000079: # E/CALL FOR CALLING A FIXED MEMORY INTERPRETIVE SUBROUTINE FROM ERASABLE AND RETURNING TO ERASABLE. 018400,000080: 018401,000081: # THE CALLING SEQUENCE IS... 018402,000082: 018403,000083: # RTB 018404,000084: # E/CALL 018405,000085: # CADR ROUTINE # THE INTERPRETIVE SUBROUTINE YOU WANT 018406,000086: # # RETURNS HERE IN INTERPRETIVE. 018407,000087: 018408,000088: 13,2055 22164 E/CALL LXCH LOC # ADRES -1 OF CADR. 018409,000089: 13,2056 50001 INDEX L 018410,000090: 13,2057 30001 CA L # CADR IN A. 018411,000091: 13,2060 24001 INCR L 018412,000092: 13,2061 24001 INCR L # RETURN ADRES IN L. 018413,000093: 13,2062 52365 DXCH EBUF2 # STORE CADR AND RETURN. 018414,000094: 13,2063 06006 TC INTPRET 018415,000095: 13,2064 77624 CALL 018416,000096: 13,2065 00364 EBUF2 # INDIRECTLY EXECUTE ROUTING. IT MUST 018417,000097: 13,2066 77776 EXIT # LEAVE VIA RVQ OR EQUIVALENT. 018418,000098: 13,2067 22365 LXCH EBUF2 +1 # PICK UP RETURN. 018419,000099: 13,2070 16010 TCF INTPRET +2 # SET LOC AND RETURN TO CALLER. 018420,000100: 018421,000101: # Page 422 018422,000102: # E/JOBWAK FOR WAKING UP ERASABLE MEMORY JOBS. 018423,000103: 018424,000104: # THIS ROUTINE MUST BE CALLED IN INTERRUPT OR WITH INTERRUPTS INHIBITED. 018425,000105: 018426,000106: # THE CALLING SEQUENCE IS 018427,000107: 018428,000108: # INHINT 018429,000109: # ... 018430,000110: # CA WAKEADR # ADDRESS OF SLEEPING JOB 018431,000111: # TC IBNKCALL 018432,000112: # CADR E/JOBWAK 018433,000113: # ... # RETURNS HERE 018434,000114: # RELINT # IF YOU DID AND INHINT 018435,000115: 018436,000116: 33,2000 BANK 33 018437,000117: 04,2000 SETLOC E/PROG 018438,000118: 04,2000 BANK 018439,000119: 018440,000120: 04,2606 COUNT* $$/P07 018441,000121: 018442,000122: 04,2606 05201 E/JOBWAK TC JOBWAKE # ARRIVE IWTH ADRES IN A. 018443,000123: 04,2607 45005 CS BIT11 018444,000124: 04,2610 50064 NDX LOCCTR 018445,000125: 04,2611 26164 ADS LOC # KNOCK FIXED MEMORY BIT OUT OF ADRES. 018446,000126: 04,2612 00072 TC RUPTREG3 # RETURN 018447,000127: 018448,000128: 018449,000129: # THESE PROGRAMS ARE PROVIDED TO ALLOW OVERLAY OF BANKS 30 THRU 33 OF THE 205 VERSIONS OF SYSTEM TESTS AND 018450,000130: # PRELAUNCH ALIGN. THE INTENT IS TO ALLOW THE STG AND HYBRID LABS TO RUN ALL THE TESTS WITH COLOSSUS. 018451,000131: 018452,000132: 018453,000133: 33,2000 BANK 33 018454,000134: 33,2000 SETLOC TESTLEAD 018455,000135: 33,2000 BANK 018456,000136: 018457,000137: 33,2000 COUNT 33/COMST 018458,000138: 018459,000139: 33,2000 E5,1425 EBANK= QPLACE 018460,000140: 018461,000141: 33,2000 03436 COMPVER TC GCOMPVER # MUST BE 33,2000. 018462,000142: 018463,000143: 33,2001 03131 GTSCPSS1 TC GTSCPSS # MUST BE AT 33,2001 018464,000144: 018465,000145: 33,2002 05354 REDO TC NEWMODEX # DISPLAY MM 07. 018466,000146: 33,2003 00007 MM 07 B-14 # FALL INTO IMUTEST 018467,000147: End of include-file SYSTEM_TEST_STANDARD_LEAD_INS.agc. Parent file is MAIN.agc