Source Code
009447,000001: # Copyright: Public domain.
009448,000002: # Filename: SXTMARK.agc
009449,000003: # Purpose: Part of the source code for Comanche, build 055. It
009450,000004: # is part of the source code for the Command Module's
009451,000005: # (CM) Apollo Guidance Computer (AGC), Apollo 11.
009452,000006: # Assembler: yaYUL
009453,000007: # Reference: pp. 222-235
009454,000008: # Contact: Ron Burkey <info@sandroid.org>,
009455,000009: # Fabrizio Bernardini <fabrizio@spacecraft.it>
009456,000010: # Website: http://www.ibiblio.org/apollo.
009457,000011: # Mod history: 16/05/09 FB Transcription Batch 2 Assignment.
009458,000012: # 2010-08-28 JL Fixed indentation.
009459,000013:
009460,000014: # The contents of the "Comanche055" files, in general, are transcribed
009461,000015: # from scanned documents.
009462,000016:
009463,000017: # Assemble revision 055 of AGC program Comanche by NASA
009464,000018: # 2021113-051. April 1, 1969.
009465,000019:
009466,000020: # This AGC program shall also be referred to as Colossus 2A
009467,000021:
009468,000022: # Prepared by
009469,000023: # Massachusetts Institute of Technology
009470,000024: # 75 Cambridge Parkway
009471,000025: # Cambridge, Massachusetts
009472,000026:
009473,000027: # under NASA contract NAS 9-4065.
009474,000028:
009475,000029: # Refer directly to the online document mentioned above for further
009476,000030: # information. Please report any errors to info@sandroid.org.
009477,000031:
009478,000032: # Page 222
009479,000033: # PROGRAM NAME: SXTMARK DATE: 5 APRIL 1967
009480,000034: # PROGRAM MODIFIED BY 258/278 PROGRAMMERS LOG SECTION SXTMARK
009481,000035: # MOD BY: R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
009482,000036: #
009483,000037: # FUNCTIONAL DESCRIPTION:
009484,000038:
009485,000039: # SXTMARK IS CALLED FROM INTERNAL ROUTINES WHICH MAY REQUIRE STAR OR LANDMARK MARKINGS BY THE ASTRONAUT. IF
009486,000040: # THE MARK SYSTEM IS NOT IN USE, SXTMARK RESERVES A VAC AREA FOR MARKING AND REQUESTS EXECUTION OF THE MKVB51
009487,000041: # ROUTINE VIA THE EXECUTIVE JOB PRIORITY LIST. R21 USES THIS ROUTINE TO DETERMINE IF THE MARK SYSTEM CAN BE
009488,000042: # USED. IF YES, SXTMARK RETURNS TO R21 TO PERFORM ITS OWN MARK REQUESTS VIA THE V51 FLASH.
009489,000043:
009490,000044: # CALLING SEQUENCE:
009491,000045:
009492,000046: # CAF (NO. MARK REQUESTS IN BITS 1-3 OF A)
009493,000047: # TC BANKCALL
009494,000048: # CADR SXTMARK
009495,000049:
009496,000050: # NORMAL EXIT MODE:
009497,000051:
009498,000052: # SWRETURN
009499,000053:
009500,000054: # ALARM OR ABORT EXIT MODE:
009501,000055:
009502,000056: # ABORT
009503,000057:
009504,000058: # OUTPUT:
009505,000059:
009506,000060: # 1) MARKSTAT CONTAINS MARK VALUE (BITS 14-12) AND VAC AREA ADDRESS
009507,000061: # 2) QPRET = VAC AREA POINTER VALUE
009508,000062: # 3) 1ST WORD OF RESERVED VAC AREA SET TO +0
009509,000063: # 4) PRIO32 PLACED IN A REGISTER
009510,000064:
009511,000065: # ERASABLE INITIALIZATION:
009512,000066:
009513,000067: # 1) BITS 1-3 OF A = NO. MARKS REQUESTED
009514,000068: # 2) BITS 2,3 OF EXTVBACT = 0
009515,000069: # 3) A VAC AREA MUST BE AVAILABLE (WORD 1 = ADDRESS OF VAC AREA)
009516,000070:
009517,000071: # DEBRIS:
009518,000072:
009519,000073: # A,Q,L,RUPTREG1,MARKSTAT,QPRET,BIT2 OF EXTVBACT
009520,000074:
009521,000075: 13,2036 BANK 13
009522,000076: 07,2000 SETLOC SXTMARKE
009523,000077: 07,2000 BANK
009524,000078:
009525,000079: 07,2002 E7,1725 EBANK= MRKBUF1
009526,000080: 07,2002 COUNT 07/SXTMK
009527,000081:
009528,000082: 07,2002 00004 SXTMARK INHINT
009529,000083: 07,2003 54070 TS RUPTREG1 # NUMBER OF MARKS WANTED
009530,000084:
009531,000085: 07,2004 36211 CAF SIX # BIT2 = MARKING SYSTEM IN USE
009532,000086: 07,2005 71044 MASK EXTVBACT # BIT3 = EXTENDED VERB IN PROGRESS
009533,000087: 07,2006 10000 CCS A
009534,000088: 07,2007 02013 TC MKABORT
009535,000089: # Page 223
009536,000090: 07,2010 35016 CAF BIT2 # NOT SET
009537,000091: 07,2011 27044 ADS EXTVBACT # SET IT, RESET IN ENDMARK
009538,000092: 07,2012 02015 TC MARKOK # YES, FIND VAC AREA
009539,000093:
009540,000094: 07,2013 07755 MKABORT TC BAILOUT
009541,000095: 07,2014 01211 OCT 01211
009542,000096: 07,2015 10400 MARKOK CCS VAC1USE # FIND VAC AREA
009543,000097: 07,2016 02031 TC MKVACFND
009544,000098: 07,2017 10454 CCS VAC2USE
009545,000099: 07,2020 02031 TC MKVACFND
009546,000100: 07,2021 10530 CCS VAC3USE
009547,000101: 07,2022 02031 TC MKVACFND
009548,000102: 07,2023 10604 CCS VAC4USE
009549,000103: 07,2024 02031 TC MKVACFND
009550,000104: 07,2025 10660 CCS VAC5USE
009551,000105: 07,2026 02031 TC MKVACFND
009552,000106: 07,2027 07755 TC BAILOUT
009553,000107: 07,2030 01207 OCT 01207
009554,000108:
009555,000109: 07,2031 65016 MKVACFND AD TWO # ADDRESS OF VAC AREA
009556,000110: 07,2032 55330 TS MARKSTAT
009557,000111: 07,2033 50000 INDEX A
009558,000112: 07,2034 54052 TS QPRET # STORE NEXT AVAILABLE MARK SLOT
009559,000113:
009560,000114: 07,2035 35021 CAF ZERO # STORE VAC AREA OCCUPIED
009561,000115: 07,2036 51330 INDEX MARKSTAT
009562,000116: 07,2037 53777 TS 0 -1
009563,000117:
009564,000118: 07,2040 05364 TC CHECKMM # BACKUP MARK ROUTINE USES SXTMARK
009565,000119: 07,2041 00065 MM 53 B-14
009566,000120: 07,2042 12044 TCF +2
009567,000121: 07,2043 14675 TCF SWRETURN
009568,000122: 07,2044 05364 TC CHECKMM
009569,000123: 07,2045 00066 MM 54 B-14
009570,000124: 07,2046 12050 TCF +2
009571,000125: 07,2047 14675 TCF SWRETURN
009572,000126: 07,2050 35004 CAF BIT12 # DESIRED NUMBER OF MARKS IN 12-14
009573,000127: 07,2051 00006 EXTEND
009574,000128: 07,2052 70070 MP RUPTREG1
009575,000129: 07,2053 56001 XCH L
009576,000130: 07,2054 27330 ADS MARKSTAT
009577,000131:
009578,000132: 07,2055 37667 CAF PRIO32 # ENTER MARK JOB
009579,000133: 07,2056 05134 TC NOVAC
009580,000134: 07,2057 1330 EBANK= MARKSTAT
009581,000135: 07,2057 02347 16062 2CADR MKVB51
009582,000136:
009583,000137: 07,2061 00003 RELINT
009584,000138: 07,2062 14675 TCF SWRETURN # SAME AS MODEEXIT
009585,000139:
009586,000140: # Page 224
009587,000141: # PROGRAM NAME: MKRELEAS DATE: 5 APRIL 1967
009588,000142: # PROGRAM MODIFIED BY 248/278 PROGRAMMERS LOG SECTION SXTMARK
009589,000143: # MOD BY: R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
009590,000144:
009591,000145: # FUNCTIONAL DESCRIPTION:
009592,000146:
009593,000147: # MKRELEAS IS EXECUTED BY INTERNAL ROUTINES TO RELEASE THE MARK SYSTEM TO MAKE IT AVAILABLE TO OTHER INTERNAL
009594,000148: # SYSTEM ROUTINES. IT ALSO CLEARS THE COARSE OPTICS FLAG BIT AND DISABLES THE OPTICS ERROR COUNTER.
009595,000149:
009596,000150: # CALLING SEQUENCE:
009597,000151:
009598,000152: # TC BANKCALL
009599,000153: # CADR MKRELEAS
009600,000154:
009601,000155: # NORMAL EXIT MODE:
009602,000156:
009603,000157: # SWRETURN
009604,000158:
009605,000159: # ALARM OR EXIT MODE: NONE
009606,000160:
009607,000161: # OUTPUT:
009608,000162:
009609,000163: # 1) BIT9 OPTMODES SET TO 0
009610,000164: # 2) OPTIND SET TO -1
009611,000165: # 3) 1ST WORD OF VAC AREA SET TO VAC ADDRESS TO SIGNIFY AVAILABILITY
009612,000166: # 4) MARKSTAT CLEARED
009613,000167: # 5) BIT2 CHANNEL 12 SET TO 0
009614,000168:
009615,000169: # ERASABLE INITIALIZATION: NONE
009616,000170:
009617,000171: # DEBRIS:
009618,000172:
009619,000173: # A,MARKSTAT,BIT9,OPTMODES OPTIND,BIT2 CHANNEL 12
009620,000174:
009621,000175: 07,2063 35021 MKRELEAS CAF ZERO # SHOW MARK SYSTEM NOW AVAILABLE
009622,000176: 07,2064 57330 XCH MARKSTAT
009623,000177: 07,2065 75046 MASK LOW9
009624,000178: 07,2066 10000 CCS A
009625,000179: 07,2067 50000 INDEX A
009626,000180: 07,2070 54000 TS 0
009627,000181: 07,2071 00004 MKRLEES INHINT
009628,000182: 07,2072 45007 CS BIT9 # COARSE OPTICS RETURN FLAG.
009629,000183: 07,2073 71331 MASK OPTMODES
009630,000184: 07,2074 55331 TS OPTMODES
009631,000185:
009632,000186: 07,2075 37716 CA NEGONE
009633,000187: 07,2076 55303 TS OPTIND # KILL COARSE OPTICS
009634,000188:
009635,000189: 07,2077 45016 CS BIT2 # DISABLE OPTICS ERROR COUNTER
009636,000190: 07,2100 00006 EXTEND
009637,000191: 07,2101 03012 WAND CHAN12
009638,000192:
009639,000193: 07,2102 00003 RELINT
009640,000194: 07,2103 04675 TC SWRETURN
009641,000195: # Page 225
009642,000196: # PROGRAM NAME: MARKRUPT DATE: 5 APRIL 1967
009643,000197: # PROGRAM MODIFIED BY 258/278 PROGRAMMERS LOG SECTION SXTMARK
009644,000198: # MOD BY: R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
009645,000199:
009646,000200: # FUNCTIONAL DESCRIPTION:
009647,000201:
009648,000202: # MARKRUPT STORES CDUS,OPTICS AND TIME AND TRANSFERS CONTROL TO THE MARKIT,MARK REJECT OR KEYCOM ROUTINES IF
009649,000203: # BITS IN CHANNEL 16 ARE SET AS REQUIRED.
009650,000204:
009651,000205: # CALLING SEQUENCE:
009652,000206:
009653,000207: # ROUTINE ENTERED VIA KEYRUPT2 WHEN MARK,MARK REJECT OR DSKY KEYS DEPRESSED BY THE OPERATOR.
009654,000208:
009655,000209: # NORMAL EXIT MODE:
009656,000210:
009657,000211: # MARKIT, MKREJECT, OR POSTJUMP ROUTINES (MARK, MARK REJECT, OR DSKY CODE)
009658,000212:
009659,000213: # ALARM OR ABORT EXIT MODE:
009660,000214:
009661,000215: # ALARM AND RESUME
009662,000216:
009663,000217: # OUTPUT:
009664,000218:
009665,000219: # RUPTSTOR+5 = CDUT, RUPTSTOR+3 = CDUS, RUPTSTOR+2 = CDUY,
009666,000220: # RUPTREG3 = CDUZ, RUPTSTOR+6 = CDUX, RUPTSTOR+1 AND SAMPTIME+1 = TIME1,
009667,000221: # RUPTSTOR AND SAMPTIME = TIME2
009668,000222:
009669,000223: # ERASABLE INITIALIZATION:
009670,000224:
009671,000225: # CDUT,CDUS,CDUY,CDUZ,CDUX,TIME2,TIME1,CHANNEL 16 BITS 6,7 OR 1-5.
009672,000226:
009673,000227: # DEBRIS:
009674,000228:
009675,000229: # A,QRUPT,RUPTREG3,SAMPTIME,SAMPTIME+1,RUPTSTOR TO RUPTSTOR+6 EXCEPT RUPTSTOR+4 (LOCATION 67)
009676,000230:
009677,000231: 07,2104 54016 MARKRUPT TS BANKRUPT # STORE CDUS AND OPTICS NOW
009678,000232: 07,2105 30035 CA CDUT
009679,000233: 07,2106 54362 TS MKCDUT
009680,000234: 07,2107 30036 CA CDUS
009681,000235: 07,2110 54360 TS MKCDUS
009682,000236: 07,2111 30033 CA CDUY
009683,000237: 07,2112 54357 TS MKCDUY
009684,000238: 07,2113 30034 CA CDUZ
009685,000239: 07,2114 54361 TS MKCDUZ
009686,000240: 07,2115 30032 CA CDUX
009687,000241: 07,2116 54363 TS MKCDUX
009688,000242: 07,2117 00006 EXTEND
009689,000243: 07,2120 30025 DCA TIME2 # GET TIME
009690,000244: 07,2121 52356 DXCH MKT2T1
009691,000245: 07,2122 00006 EXTEND
009692,000246: 07,2123 30356 DCA MKT2T1
009693,000247: 07,2124 52014 DXCH SAMPTIME # RUPT TIME FOR NOUN 65.
009694,000248:
009695,000249: 07,2125 56002 XCH Q
009696,000250: 07,2126 54012 TS QRUPT
009697,000251:
009698,000252: 07,2127 35012 CAF BIT6 # SEE IF MARK OR MKREJECT
009699,000253: # Page 226
009700,000254: 07,2130 00006 EXTEND
009701,000255: 07,2131 02016 RAND NAVKEYIN
009702,000256: 07,2132 10000 CCS A
009703,000257: 07,2133 02430 TC MARKIT # IT'S A MARK
009704,000258:
009705,000259: 07,2134 35011 CAF BIT7 # NOT A MARK, SEE IF MKREJECT
009706,000260: 07,2135 00006 EXTEND
009707,000261: 07,2136 02016 RAND NAVKEYIN
009708,000262: 07,2137 10000 CCS A
009709,000263: 07,2140 02301 TC MKREJECT # IT'S A MARK REJECT
009710,000264:
009711,000265: 07,2141 34362 KEYCALL CAF OCT37 # NOT MARK OR MKREJECT, SEE IF KEYCODE
009712,000266: 07,2142 00006 EXTEND
009713,000267: 07,2143 02016 RAND NAVKEYIN
009714,000268: 07,2144 00006 EXTEND
009715,000269: 07,2145 12150 BZF +3 # IF NO INBITS
009716,000270: 07,2146 04701 TC POSTJUMP
009717,000271: 07,2147 17702 CADR KEYCOM # IT'S A KEY CODE, NOT A MARK.
009718,000272:
009719,000273: 07,2150 05650 +3 TC ALARM # ALARM IF NO INBITS
009720,000274: 07,2151 00113 OCT 113
009721,000275: 07,2152 05333 TC RESUME
009722,000276:
009723,000277: # Page 227
009724,000278: # PROGRAM NAME: MARKCONT DATE: 19 SEPT 1967
009725,000279: # PROGRAM MODIFIED BY 258/278 PROGRAMMERS LOG SECTION SXTMARK
009726,000280: # MOD BY: R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
009727,000281:
009728,000282: # FUNCTIONAL DESCRIPTION:
009729,000283:
009730,000284: # MARKCONT IS USED TO PERFORM A SPECIAL MARK FUNCTION FOR R21, TO EXECUTE A SPECIAL DISPLAY OF OPTICS AND TIME OR
009731,000285: # TO PERFORM A MARK OF THE STAR OR LAND SIGHTING BASED UPON FLASHING V-N.
009732,000286:
009733,000287: # CALLING SEQUENCE:
009734,000288:
009735,000289: # FROM MARKDIF
009736,000290:
009737,000291: # NORMAL EXIT MODE:
009738,000292:
009739,000293: # TASKOVER
009740,000294:
009741,000295: # ALARM OR ABORT EXIT MODE:
009742,000296:
009743,000297: # ALARM AND TASKOVER
009744,000298:
009745,000299: # OUTPUT:
009746,000300:
009747,000301: # 1) FOR R21:
009748,000302: # EBANK=EBANK7
009749,000303: # MRKBUF1 TO MRKBUF1+6 = TIME2,TIME1,CDUY,OPTICX,CDUZ,OPTICSY,CDUX OF CURRENT R21 MARK FUNCTION
009750,000304: # MRKBUF2 TO MRKBUF2+6 CONTAINS PREVIOUS R21 MARK VALUES.
009751,000305: # 2) FOR SPECIAL DISPLAY JOB:
009752,000306: # RUPTREG1 AND MRKBUF1 = CDUS,RUPTREG2, AND MRKBUF1+1 = CDUT.
009753,000307: # RUPTREG3 AND MRKBUF1+2 = TIME2,RUPTREG4, AND MRKBUF1+3 = TIME1.
009754,000308: # 3) FOR NORMAL MARKING:
009755,000309: # DECREMENT BITS14-12 OF MARKSTAT BY 1,
009756,000310: # BIT10 MARKSTAT SET TO 1, INCREMENT QPRET BY 7,
009757,000311: # STORE TIME2,TIME1,CDUY,CDUS,CDUZ,CDUT, AND CDUX IN VAC+1 TO VAC+7.
009758,000312:
009759,000313: # ERASABLE INITIALIZATION:
009760,000314:
009761,000315: # 1) FOR R21:
009762,000316: # BIT14 OF STATE+2 =1, MRKBUF1 TO MRKBUF1+6, ITEMP1, RUPTREG3,
009763,000317: # RUPTSTOR TO RUPTSTOR+6 EXCEPT RUPTSTOR+4.
009764,000318: # 2) FOR SPECIAL DISPLAY JOB:
009765,000319: # BIT14 OF STATE+2 =0, MARKSTAT =+0, RUPTREG1,RUPTREG2,RUPTREG3
009766,000320: # RUPTREG4,RUPTSTOR,RUPTSTOR+1,RUPTSTOR+3,RUPTSTOR+5,
009767,000321: # BIT12 OF STATE+5 (V59 FLAG), MRKBUF1 THRU MRKBUF1+3
009768,000322: # 3) FOR NORMAL MARKING:
009769,000323: # BIT14 OF STATE+2 =0, MARKSTATE =VAC ADDRESS, A REG, ITEMP1, RUPTREG3,
009770,000324: # RUPTSTOR TO RUPTSTOR+6 EXCEPT RUPTSTOR+4.
009771,000325:
009772,000326: # DEBRIS:
009773,000327:
009774,000328: # 1) FOR R21:
009775,000329: # A, ITEMP1, MRKBUF1, MRKBUF2
009776,000330: # 2) FOR SPECIAL DISPLAY JOB:
009777,000331: # A,RUPTREG1,RUPTREG2,RUPTREG3,RUPTREG4,MPAC TO MPAC+3.
009778,000332: # 3) FOR NORMAL MARKING:
009779,000333: # A,MARKSTAT,ITEMP1,QPRET,VAC+1 TO VAC+7 OF VAC AREA IN USE.
009780,000334:
009781,000335: # Page 228
009782,000336: 07,2153 35002 MARKCONT CAF BIT14
009783,000337: 07,2154 70076 MASK STATE +2 # R21 MARK (SPECIAL MARKING FOR R21)
009784,000338: 07,2155 00006 EXTEND
009785,000339: 07,2156 12170 BZF MARKET # NOT SET THEREFORE REGULAR MARKING
009786,000340: 07,2157 36211 MARKIT1 CAF SIX # SPECIAL FOR R21
009787,000341: 07,2160 05606 TC GENTRAN # TRANSFER MRKBUF1 TO MRKBUF2
009788,000342: 07,2161 01725 ADRES MRKBUF1
009789,000343: 07,2162 01734 ADRES MRKBUF2
009790,000344:
009791,000345: 07,2163 36211 CAF SIX # TRANSFER CURRENT MARK DATE TO MARKBUF1
009792,000346: 07,2164 05606 TC GENTRAN
009793,000347: 07,2165 00355 ADRES MKT2T1
009794,000348: 07,2166 01725 ADRES MRKBUF1
009795,000349:
009796,000350: 07,2167 15324 TCF TASKOVER
009797,000351:
009798,000352: 07,2170 11330 MARKET CCS MARKSTAT # SEE IF MARKS CALLED FOR
009799,000353: 07,2171 02225 TC MARK2 # COLLECT MARKS
009800,000354:
009801,000355: 07,2172 35016 CAF TWO # IS MARKING SYSTEM IN USE (BIT2)
009802,000356: 07,2173 71044 MASK EXTVBACT
009803,000357: 07,2174 00006 EXTEND
009804,000358: 07,2175 12217 BZF MARKET3 # MARKING NOT CALLED FOR
009805,000359: 07,2176 35004 CAF BIT12
009806,000360: 07,2177 70101 MASK STATE +5 # V59FLAG
009807,000361: 07,2200 00006 EXTEND
009808,000362: 07,2201 12217 BZF MARKET3 # IF V59FLAG NOT SET-MARK UNCALLED FOR
009809,000363: 07,2202 35061 CAF PRIO5 # CALIBRATION MARK (SET) FOR P23
009810,000364: 07,2203 05134 TC NOVAC # SPECIAL DISPLAY JOB
009811,000365: 07,2204 E7,1725 EBANK= MRKBUF1
009812,000366: 07,2204 02426 76067 2CADR MARKDISP
009813,000367:
009814,000368: 07,2206 36211 CAF SIX
009815,000369: 07,2207 05606 TC GENTRAN # TRANSFER MARK DATE TO MARKDOWN
009816,000370: 07,2210 00355 ADRES MKT2T1
009817,000371: 07,2211 01674 ADRES MARKDOWN
009818,000372: 07,2212 36211 CAF SIX
009819,000373: 07,2213 05606 TC GENTRAN # TRANSFER MARK DATA TO MRKBUF1 FOR
009820,000374: 07,2214 00355 ADRES MKT2T1 # SPECIAL DISPLAY OF SHAFT AND TRUNNION
009821,000375: 07,2215 01725 ADRES MRKBUF1 # IF V59 ACTING
009822,000376: 07,2216 15324 TCF TASKOVER
009823,000377: 07,2217 05650 MARKET3 TC ALARM
009824,000378: 07,2220 00122 OCT 122 # MARKING NOT CALLED FOR
009825,000379: 07,2221 15324 TCF TASKOVER
009826,000380: 07,2222 05650 114ALM TC ALARM # MARK NOT WANTED
009827,000381: 07,2223 00114 OCT 114
009828,000382: 07,2224 15324 TCF TASKOVER
009829,000383:
009830,000384: # Page 229
009831,000385: # STORE MARK DATA IN MKVAC AND INCREMENT POINTER
009832,000386:
009833,000387: 07,2225 67711 MARK2 AD 74K # SEE IF MARKS WANTED-REDUCE MARKS WANTED
009834,000388: 07,2226 00006 EXTEND
009835,000389: 07,2227 62222 BZMF 114ALM # MARK NOT WANTED-ALARM
009836,000390: 07,2230 55330 TS MARKSTAT
009837,000391: 07,2231 40000 COM
009838,000392: 07,2232 75006 MASK BIT10 # SET BIT10 TO ENABLE REJECT
009839,000393: 07,2233 27330 ADS MARKSTAT
009840,000394:
009841,000395: 07,2234 75046 MASK LOW9
009842,000396: 07,2235 54061 TS ITEMP1
009843,000397: 07,2236 50000 INDEX A
009844,000398: 07,2237 56052 XCH QPRET # PICK UP MARK SLOT-POINTER
009845,000399: 07,2240 54062 TS ITEMP2 # SAVE CURRENT POINTER
009846,000400: 07,2241 65023 AD SEVEN # INCREMENT POINTER
009847,000401: 07,2242 50061 INDEX ITEMP1
009848,000402: 07,2243 54052 TS QPRET # STORE ADVANCED POINTER
009849,000403:
009850,000404: 07,2244 00006 VACSTOR EXTEND
009851,000405: 07,2245 30356 DCA MKT2T1
009852,000406: 07,2246 50062 INDEX ITEMP2
009853,000407: 07,2247 52001 DXCH 0
009854,000408: 07,2250 30357 CA MKCDUY
009855,000409: 07,2251 50062 INDEX ITEMP2
009856,000410: 07,2252 54002 TS 2
009857,000411: 07,2253 30360 CA MKCDUS
009858,000412: 07,2254 50062 INDEX ITEMP2
009859,000413: 07,2255 54003 TS 3
009860,000414: 07,2256 30361 CA MKCDUZ
009861,000415: 07,2257 50062 INDEX ITEMP2
009862,000416: 07,2260 54004 TS 4
009863,000417: 07,2261 30362 CA MKCDUT
009864,000418: 07,2262 50062 INDEX ITEMP2
009865,000419: 07,2263 54005 TS 5
009866,000420: 07,2264 30363 CA MKCDUX
009867,000421: 07,2265 50062 INDEX ITEMP2
009868,000422: 07,2266 54006 TS 6
009869,000423:
009870,000424: 07,2267 37671 CAF PRIO34 # IF ALL MARKS MADE FLASH VB50
009871,000425: 07,2270 71330 MASK MARKSTAT
009872,000426: 07,2271 00006 EXTEND
009873,000427: 07,2272 12274 BZF +2
009874,000428: 07,2273 15324 TCF TASKOVER
009875,000429: 07,2274 37667 CAF PRIO32
009876,000430: 07,2275 05134 TC NOVAC
009877,000431: 07,2276 1330 EBANK= MARKSTAT
009878,000432: 07,2276 02422 16062 2CADR MKVB50
009879,000433:
009880,000434: 07,2300 15324 TCF TASKOVER
009881,000435:
009882,000436: # Page 230
009883,000437: # PROGRAM NAME: MKREJECT DATE: 5 APRIL 1967
009884,000438: # PROGRAM MODIFIED BY 258/276 PROGRAMMERS LOG SECTION SXTMARK
009885,000439: # MOD BY: R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
009886,000440:
009887,000441: # FUNCTIONAL DESCRIPTION:
009888,000442:
009889,000443: # ROUTINE ALLOWS OPEATOR TO REJECT MARK MADE PRIOR TO ACCEPTANCE AND ALLOWS A NEW MARK TO BE MADE BY ASTRONAUT.
009890,000444:
009891,000445: # CALLING SEQUENCE:
009892,000446:
009893,000447: # FROM MARKRUPT IF BIT7 OF CHANNEL 16 IS 1.
009894,000448:
009895,000449: # NORMAL EXIT MODE:
009896,000450:
009897,000451: # RESUME
009898,000452:
009899,000453: # ALARM OR ABORT EXIT MODE:
009900,000454:
009901,000455: # ALARM AND RESUME
009902,000456:
009903,000457: # OUTPUT:
009904,000458:
009905,000459: # 1) FOR R21:
009906,000460: # MRKRUP1 SET TO -1
009907,000461: # 2) FOR NORMAL MARKING:
009908,000462: # BIT10 MARKSTAT =0, INCREMENT NO. MARKS BY 1, DECREMENT QPRET BY 7
009909,000463:
009910,000464: # ERASABLE INITIALIZATION:
009911,000465:
009912,000466: # 1) FOR R21:
009913,000467: # BIT14 OF STATE+2 SET TO 1
009914,000468: # 2) FOR NORMAL MARKING:
009915,000469: # BIT14 OF STATE+2 SET TO 0, MARKSTAT,QPRET
009916,000470:
009917,000471: # DEBRIS:
009918,000472:
009919,000473: # 1) FOR R21:
009920,000474: # A,MARKSTAT,EBANK
009921,000475: # 2) FOR NORMAL MARKING:
009922,000476: # A,MARKSTAT,ITEMP1,QPRET
009923,000477:
009924,000478: 07,2301 35002 MKREJECT CAF BIT14
009925,000479: 07,2302 70076 MASK STATE +2 # R21 MARK (SPECIAL MARKING FOR R21)
009926,000480: 07,2303 00006 EXTEND
009927,000481: 07,2304 12310 BZF MRKREJCT # NOT SET THEREFORE REGULAR REJECT
009928,000482: 07,2305 37716 CA NEGONE # -1 (FOR R22)
009929,000483: 07,2306 55725 TS MRKBUF1 # -0 IN TIME IS FLAG TO R22 SIGNIFYING A
009930,000484: 07,2307 05333 TC RESUME # REJECTED MARK
009931,000485: 07,2310 11330 MRKREJCT CCS MARKSTAT # SEE IF MARKS BEING ACCEPTED
009932,000486: 07,2311 02315 TC REJECT2
009933,000487: 07,2312 05650 TC ALARM # MARKS NOT BEING ACCEPTED
009934,000488: 07,2313 00112 OCT 112
009935,000489: 07,2314 05333 TC RESUME
009936,000490:
009937,000491: 07,2315 45006 REJECT2 CS BIT10 # SEE IF MARK HAD BEEN MADE SINCE LAST
009938,000492: 07,2316 71330 MASK MARKSTAT # REJECT, AND SET BIT10 TO ZERO TO
009939,000493: 07,2317 57330 XCH MARKSTAT # SHOW MARK REJECT
009940,000494: # Page 231
009941,000495: 07,2320 75006 MASK BIT10
009942,000496: 07,2321 10000 CCS A
009943,000497: 07,2322 02326 TC REJECT3
009944,000498:
009945,000499: 07,2323 05650 TC ALARM # DON'T ACCEPT TWO REJECTS TOGETHER
009946,000500: 07,2324 00110 OCT 110
009947,000501: 07,2325 05333 TC RESUME
009948,000502:
009949,000503: 07,2326 35046 REJECT3 CAF LOW9 # DECREMENT POINTER TO REJECT MARK
009950,000504: 07,2327 71330 MASK MARKSTAT
009951,000505: 07,2330 54061 TS ITEMP1
009952,000506: 07,2331 45023 CS SEVEN
009953,000507: 07,2332 50061 INDEX ITEMP1
009954,000508: 07,2333 26052 ADS QPRET # NEW POINTER
009955,000509:
009956,000510: 07,2334 35004 CAF BIT12 # INCREMENT MARKS WANTED AND IF FIELD
009957,000511: 07,2335 61330 AD MARKSTAT # IS NOW NON-ZERO, CHANGE TO VB51 TO
009958,000512: 07,2336 57330 XCH MARKSTAT # INDICATE MORE MARKS WANTED
009959,000513: 07,2337 77671 MASK PRIO34 # INDICATE MORE MARKS WANTED
009960,000514: 07,2340 10000 CCS A
009961,000515: 07,2341 05333 TC RESUME
009962,000516: 07,2342 37667 CAF PRIO32
009963,000517: 07,2343 05134 TC NOVAC
009964,000518: 07,2344 1330 EBANK= MARKSTAT
009965,000519: 07,2344 02347 16062 2CADR MKVB51
009966,000520:
009967,000521: 07,2346 05333 TC RESUME
009968,000522:
009969,000523: # Page 232
009970,000524: # PROGRAM DESCRIPTON MKVB51 AND MKVB50
009971,000525:
009972,000526: # AUTHOR: BARNERT DATE: 2-15-67 MOD: 0
009973,000527: # PURPOSE: FLASH V51N70,V51N43, OR V51 TO REQUEST MARKING,
009974,000528: # AND V50N25 R1=16 TO REQUEST TERMINATE MARKING.
009975,000529:
009976,000530: # CALLING SEQUENCE: AS JOB WITHIN SXTMARK
009977,000531:
009978,000532: # EXIT TO ENDMARK UPON RECEIPT OF V33, V34 CAUSES GOTOP00H, ENTER
009979,000533: # RECYCLES THE DISPLAY
009980,000534:
009981,000535: # NOTE: SXTMARK AUTOMATICALLY CHANGES FROM CALLING MKVB51 TO MKVB50 WHEN
009982,000536: # SUFFICIENT MARKS HAVE BEEN MADE, AND THE REVERSE WHEN A MARK
009983,000537: # REJECT REDUCES THE NUMBER MADE BELOW THAT REQUIRED
009984,000538:
009985,000539: # SUBROUTINES CALLED: BANKCALL, GOMARK2, GOODEND, ENDMARK, WAITLIST
009986,000540:
009987,000541: # ALARM OR ABORT MODES: NONE
009988,000542:
009989,000543: # ERASABLE USED: VERBREG, MARKSTAT, QPRET, DSPTEM1
009990,000544:
009991,000545: # OUTPUT MARKSTAT = VAC ADDRESS
009992,000546:
009993,000547: # QPRET = NO. MARKS
009994,000548:
009995,000549: 07,2347 04662 MKVB51 TC BANKCALL # CLEAR DISPLAY FOR MARK VERB
009996,000550: 07,2350 20560 CADR KLEENEX
009997,000551: 07,2351 32427 CAF VB51 # DISPLAY MARK VB51
009998,000552: 07,2352 04662 TC BANKCALL
009999,000553: 07,2353 20572 CADR GOMARK4
010000,000554: 07,2354 12357 TCF TERMSXT # VB34-TERMINATE
010001,000555: 07,2355 12370 TCF ENTANSWR # V33-PROCEED-MARKING DONE
010002,000556: 07,2356 12416 TCF MKVB5X # ENTER-RECYCLE TO INITIAL MARK DISPLAY
010003,000557:
010004,000558: 07,2357 05536 TERMSXT TC CLEARMRK # CLEAR MARK ACTIVITY.
010005,000559:
010006,000560: 07,2360 05364 TC CHECKMM
010007,000561: 07,2361 00003 MM 03 B-14
010008,000562: 07,2362 12364 TCF +2
010009,000563: 07,2363 02366 TC TERMP03
010010,000564: 07,2364 04701 TC POSTJUMP
010011,000565: 07,2365 30205 CADR TERM52
010012,000566:
010013,000567: 07,2366 05546 TERMP03 TC UPFLAG
010014,000568: 07,2367 00032 ADRES TRM03FLG
010015,000569: 07,2370 35046 ENTANSWR CAF LOW9 # PUT VAC ADR IN MARKSTAT AND NO. OF
010016,000570: 07,2371 71330 MASK MARKSTAT # MARKS MADE IN QPRET BEFORE LEAVING
010017,000571: 07,2372 55330 TS MARKSTAT # SXTMARK
010018,000572: 07,2373 40000 COM
010019,000573: 07,2374 51330 INDEX MARKSTAT
010020,000574: 07,2375 60052 AD QPRET
010021,000575: # Page 233
010022,000576: 07,2376 00006 EXTEND
010023,000577: 07,2377 62403 BZMF JAMIT # NO MARKS MADE, SHOW IT IN QPRET, R53
010024,000578: 07,2400 00006 EXTEND # WILL PICK IT UP AND RECYCLE
010025,000579: 07,2401 75004 MP BIT12 # THIS PUTS NUMBER MARKS-1 IN A
010026,000580: 07,2402 65017 AD ONE
010027,000581: 07,2403 51330 JAMIT INDEX MARKSTAT # STORE NO OF MARKS MADE
010028,000582: 07,2404 54052 TS QPRET
010029,000583: 07,2405 00004 INHINT # SERVICE OPTSTALL INTERFACE WITH
010030,000584: 07,2406 35022 CAF FIVE
010031,000585: 07,2407 05245 TC WAITLIST
010032,000586: 07,2410 1330 EBANK= MARKSTAT
010033,000587: 07,2410 02413 16062 2CADR ENDMARKS
010034,000588:
010035,000589: 07,2412 05534 TC ENDMARK # KNOCKS DOWN MARKING FLAG + DOES ENDOFJOB
010036,000590:
010037,000591: 07,2413 35017 ENDMARKS CAF ONE
010038,000592: 07,2414 04740 TC IBNKCALL
010039,000593: 07,2415 17550 CADR GOODEND
010040,000594: 07,2416 37671 MKVB5X CAF PRIO34
010041,000595: 07,2417 71330 MASK MARKSTAT # RE-DISPLAY VB51 IF MORE MARKS WANTED
010042,000596: 07,2420 10000 CCS A # AND VB50 IF ALL IN
010043,000597: 07,2421 12347 TCF MKVB51
010044,000598: 07,2422 34333 MKVB50 CAF R1D1 # OCT 16
010045,000599: 07,2423 55045 TS DSPTEM1
010046,000600: 07,2424 32426 CAF V50N25
010047,000601: 07,2425 12352 TCF MKVB51 +3
010048,000602:
010049,000603: 07,2426 14431 V50N25 VN 5025
010050,000604: 07,2427 14600 VB51 VN 5100
010051,000605: 07,2430 4362 OCT37 = LOW5
010052,000606:
010053,000607: # PROGRAM NAME: MARKIT DATE: 19 SEPT 1967
010054,000608:
010055,000609: # CALLING SEQUENCE:
010056,000610:
010057,000611: # FROM MARKRUPT IF CHAN 16 BIT 6 = 1
010058,000612:
010059,000613: # EXIT
010060,000614:
010061,000615: # RESUME
010062,000616:
010063,000617: # INPUT
010064,000618:
010065,000619: # CDUCHKWD. ALSO ALL INITIALIZATION FOR MARKCONT
010066,000620:
010067,000621: # OUTPUT
010068,000622:
010069,000623: # MKT2T1,MKCDUX,MKCDUY,MKCDUZ,MKCDUS,MKCDUT
010070,000624:
010071,000625: # ALARM EXIT
010072,000626:
010073,000627: # NONE
010074,000628:
010075,000629: 07,2430 11341 MARKIT CCS CDUCHKWD
010076,000630: 07,2431 12434 TCF +3 # DELAY OF CDUCHKWD CS IF PNZ
010077,000631: # Page 234
010078,000632: 07,2432 12434 TCF +2
010079,000633: 07,2433 35021 CAF ZERO
010080,000634: 07,2434 65017 AD ONE # 10 MS IF NO CHECK
010081,000635: 07,2435 05245 TC WAITLIST
010082,000636: 07,2436 E7,1725 EBANK= MRKBUF1
010083,000637: 07,2436 02203 20067 2CADR MARKDIF
010084,000638:
010085,000639: 07,2440 15333 TCF RESUME
010086,000640:
010087,000641: 10,2000 SETLOC SXTMARK1
010088,000642: 10,2000 BANK
010089,000643:
010090,000644: 10,2203 COUNT 20/SXTMK
010091,000645:
010092,000646: # PROGRAM NAME: MARKDIF
010093,000647:
010094,000648: # CALLING SEQUENCE
010095,000649:
010096,000650: # WAITLIST FROM MARKIT
010097,000651:
010098,000652: # EXIT
010099,000653:
010100,000654: # TASKOVER TO IBNKCALL TO MARKCONT
010101,000655:
010102,000656: # INPUT
010103,000657:
010104,000658: # OUTPUT FROM MARKIT, INPUT TO MARKCONT, CDUCHKWD
010105,000659:
010106,000660: # OUTPUT
010107,000661:
010108,000662: # RUPTSTOR - RUPTSTOR+3, RUPTREG3, RUPTSTOR+5 - RUPTSTOR+6
010109,000663:
010110,000664: # ALARM EXIT
010111,000665:
010112,000666: # ALARM AND TASKOVER
010113,000667:
010114,000668: 10,2203 31341 MARKDIF CA CDUCHKWD # IF DELAY CHECK IS ZERO OR NEG, ACP MARK
010115,000669: 10,2204 00006 EXTEND
010116,000670: 10,2205 62216 BZMF MKACPT
010117,000671: 10,2206 45017 CS BIT1
010118,000672: 10,2207 54354 TS MKNDX # SET INDEX -1
010119,000673: 10,2210 30363 CA MKCDUX
010120,000674: 10,2211 02220 TC DIFCHK # SEE IF VEHICLE RATE TO MUCH AT MARK
010121,000675: 10,2212 30357 CA MKCDUY
010122,000676: 10,2213 02220 TC DIFCHK
010123,000677: 10,2214 30361 CA MKCDUZ
010124,000678: 10,2215 02220 TC DIFCHK
010125,000679:
010126,000680: 10,2216 04740 MKACPT TC IBNKCALL
010127,000681: 10,2217 16153 CADR MARKCONT # MARK DATA OK, WHAT DO WE DO WITH IT
010128,000682:
010129,000683: 10,2220 24354 DIFCHK INCR MKNDX # INCREMENT INDEX
010130,000684:
010131,000685: 10,2221 00006 EXTEND
010132,000686: 10,2222 50354 INDEX MKNDX
010133,000687: # Page 235
010134,000688: 10,2223 20032 MSU CDUX # GET MARK(ICDU) - CURRENT(ICDU)
010135,000689: 10,2224 10000 CCS A
010136,000690: 10,2225 12231 TCF +4
010137,000691: 10,2226 00002 TC Q
010138,000692: 10,2227 12231 TCF +2
010139,000693: 10,2230 00002 TC Q
010140,000694: 10,2231 67715 AD NEG2 # SEE IF DIFFERENCE GREATER THAN 3 BITS
010141,000695: 10,2232 00006 EXTEND
010142,000696: 10,2233 62230 BZMF -3 # NOT GREATER
010143,000697:
010144,000698: 10,2234 05650 TC ALARM # COUPLED WITH PROGRAM ALARM
010145,000699: 10,2235 00121 OCT 00121
010146,000700:
010147,000701: 10,2236 15324 TCF TASKOVER # DO NOT ACCEPT
010148,000702:
010149,000703:
End of include-file SXTMARK.agc. Parent file is MAIN.agc