-
Notifications
You must be signed in to change notification settings - Fork 343
/
SXTMARK.agc
646 lines (580 loc) · 14.9 KB
/
SXTMARK.agc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
### FILE="Main.annotation"
## Copyright: Public domain.
## Filename: SXTMARK.agc
## Purpose: A section of Manche72 revision 3.
## It is part of the reconstructed source code for the final, flown
## release of the software for the Command Module's (CM) Apollo
## Guidance Computer (AGC) for Apollo 13. No original listings
## of this program are available; instead, this file was recreated
## from a reconstructed copy of Comanche 072. It has been adapted
## such that the resulting bugger words exactly match those
## specified for Manche72 revision 3 in NASA drawing 2021153G,
## which gives relatively high confidence that the reconstruction
## is correct.
## Assembler: yaYUL
## Contact: Ron Burkey <info@sandroid.org>.
## Website: www.ibiblio.org/apollo/index.html
## Mod history: 2024-05-19 MAS Created from Comanche 072.
# PROGRAM NAME - SXTMARK DATE - 5 APRIL 1967
# PROGRAM MODIFIED BY 258/278 PROGRAMMERS LOG SECTION SXTMARK
# MOD BY - R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
#
# FUNCTIONAL DESCRIPTION-
#
# SXTMARK IS CALLED FROM INTERNAL ROUTINES WHICH MAY REQUIRE STAR OR LANDMARK MARKINGS BY THE ASTRONAUT. IF
# THE MARK SYSTEM IS NOT IN USE, SXTMARK RESERVES A VAC AREA FOR MARKING AND REQUESTS EXECUTION OF THE MKVB51
# ROUTINE VIA THE EXECUTIVE JOB PRIORITY LIST. R21 USES THIS ROUTINE TO DETERMINE IF THE MARK SYSTEM CAN BE
# USED. IF YES, SXTMARK RETURNS TO R21 TO PERFORM ITS OWN MARK REQUESTS VIA THE V51 FLASH.
#
# CALLING SEQUENCE-
#
# CAF (NO. MARK REQUESTS IN BITS 1-3 OF A)
# TC BANKCALL
# CADR SXTMARK
#
# NORMAL EXIT MODE-
#
# SWRETURN
#
# ALARM OR ABORT EXIT MODE-
#
# ABORT
#
# OUTPUT-
#
# 1) MARKSTAT CONTAINS MARK VALUE (BITS 14-12) AND VAC AREA ADDRESS
# 2) QPRET = VAC AREA POINTER VALUE
# 3) 1ST WORD OF RESERVED VAC AREA SET TO +0
# 4) PRIO32 PLACED IN A REGISTER
#
# ERASABLE INITIALIZATION-
#
# 1) BITS 1-3 OF A = NO. MARKS REQUESTED
# 2) BITS 2,3 OF EXTVBACT = 0
# 3) A VAC AREA MUST BE AVAILABLE (WORD 1 = ADDRESS OF VAC AREA)
#
# DEBRIS-
#
# A,Q,L,RUPTREG1,MARKSTAT,QPRET,BIT2 OF EXTVBACT
BANK 13
SETLOC SXTMARKE
BANK
EBANK= MRKBUF1
COUNT 07/SXTMK
SXTMARK INHINT
TS RUPTREG1 # NUMBER OF MARKS WANTED
CAF SIX # BIT2 = MARKING SYSTEM IN USE
MASK EXTVBACT # BIT3 = EXTENDED VERB IN PROGRESS
CCS A
TC MKABORT # SET THEREFORE ABORT
CAF BIT2 # NOT SET
ADS EXTVBACT # SET IT, RESET IN ENDMARK
TC MARKOK # YES, FIND VAC AREA
MKABORT TC BAILOUT
OCT 31211
MARKOK CCS VAC1USE # FIND VAC AREA
TC MKVACFND
CCS VAC2USE
TC MKVACFND
CCS VAC3USE
TC MKVACFND
CCS VAC4USE
TC MKVACFND
CCS VAC5USE
TC MKVACFND
TC BAILOUT
OCT 31207
MKVACFND AD TWO # ADDRESS OF VAC AREA
TS MARKSTAT
INDEX A
TS QPRET # STORE NEXT AVAILABLE MARK SLOT
CAF ZERO # SHOW VAC AREA OCCUPIED
INDEX MARKSTAT
TS 0 -1
TC CHECKMM # BACKUP MARK ROUTINE USES SXTMARK
MM 53
TCF +2
TCF SWRETURN
TC CHECKMM
MM 54
TCF +2
TCF SWRETURN
CAF BIT12 # DESIRED NUMBER OF MARKS IN 12-14
EXTEND
MP RUPTREG1
XCH L
ADS MARKSTAT
CAF PRIO32 # ENTER MARK JOB
TC NOVAC
EBANK= MARKSTAT
2CADR MKVB51
RELINT
TCF SWRETURN # SAME AS MODEEXIT
# PROGRAM NAME - MKRELEAS DATE - 5 APRIL 1967
# PROGRAM MODIFIED BY 258/278 PROGRAMMERS LOG SECTION SXTMARK
# MOD BY - R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
#
# FUNCTIONAL DESCRIPTION-
#
# MKRELEAS IS EXECUTED BY INTERNAL ROUTINES TO RELEASE THE MARK SYSTEM TO MAKE IT AVAILABLE TO OTHER INTERNAL
# SYSTEM ROUTINES. IT ALSO CLEARS THE COARSE OPTICS FLAG BIT AND DISABLES THE OPTICS ERROR COUNTER.
#
# CALLING SEQUENCE-
#
# TC BANKCALL
# CADR MKRELEAS
#
# NORMAL EXIT MODE-
#
# SWRETURN
#
# ALARM OR ABORT EXIT MODE- NONE
#
# OUTPUT-
#
# 1) BIT9 OPTMODES SET TO 0
# 2) OPTIND SET TO -1
# 3) 1ST WORD OF VAC AREA SET TO VAC ADDRESS TO SIGNIFY AVAILABILITY.
# 4) MARKSTAT CLEARED
# 5) BIT2 CHANNEL 12 SET TO 0
#
# ERASABLE INITIALIZATION- NONE
#
# DEBRIS-
#
# A,MARKSTAT,BIT9 OPTMODES,OPTIND,BIT2 CHANNEL 12
MKRELEAS CAF ZERO # SHOW MARK SYSTEM NOW AVAILABLE
XCH MARKSTAT
MASK LOW9
CCS A
INDEX A
TS 0
MKRLEES INHINT
CS BIT9 # COARSE OPTICS RETURN FLAG.
MASK OPTMODES
TS OPTMODES
CA NEGONE
TS OPTIND # KILL COARS OPTICS
CS BIT2 # DISABLE OPTICS ERROR COUNTER
EXTEND
WAND CHAN12
RELINT
TC SWRETURN
# PROGRAM NAME - MARKRUPT DATE - 5 APRIL 1967
# PROGRAM MODIFIED BY 258/278 PROGRAMMERS LOG SECTION SXTMARK
# MOD BY - R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
#
# FUNCTIONAL DESCRIPTION-
# MARKRUPT STORES CDUS,OPTICS AND TIME AND TRANSFERS CONTROL TO THE MARKIT,MARK REJECT OR KEYCOM ROUTINES IF
# BITS IN CHANNEL 16 ARE SET AS REQUIRED.
#
# CALLING SEQUENCE-
# ROUTINE ENTERED VIA KEYRUPT2 WHEN MARK,MARK REJECT OR DSKY KEYS DEPRESSED BY THE OPERATOR.
#
# NORMAL EXIT MODE-
# MARKIT, MKREJECT OR POSTJUMP ROUTINES (MARK, MARK REJECT OR DSKY CODE)
#
# ALARM OR ABORT EXIT MODE-
# ALARM AND RESUME
#
# OUTPUT-
# RUPTSTOR+5 = CDUT, RUPTSTOR+3 = CDUS, RUPTSTOR+2 = CDUY,
# RUPTREG3 = CDUZ, RUPTSTOR+6 = CDUX, RUPTSTOR+1 AND SAMPTIME+1 = TIME1,
# RUPTSTOR AND SAMPTIME = TIME2
#
# ERASABLE INITIALIZATION-
# CDUT,CDUS,CDUY,CDUZ,CDUX,TIME2,TIME1,CHANNEL 16 BITS 6,7 OR 1-5
#
# DEBRIS-
# A,QRUPT,RUPTREG3,SAMPTIME,SAMPTIME+1,RUPTSTOR TO RUPTSTOR+6 EXCEPT RUPTSTOR+4 (LOCATION 67)
MARKRUPT TS BANKRUPT # STORE CDUS AND OPTICS NOW
CA CDUT
TS MKCDUT
CA CDUS
TS MKCDUS
CA CDUY
TS MKCDUY
CA CDUZ
TS MKCDUZ
CA CDUX
TS MKCDUX
EXTEND
DCA TIME2 # GET TIME
DXCH MKT2T1
EXTEND
DCA MKT2T1
DXCH SAMPTIME # RUPT TIME FOR NOUN 65.
XCH Q
TS QRUPT
CAF BIT6 # SEE IF MARK OR MKREJECT
EXTEND
RAND NAVKEYIN
CCS A
TC MARKIT # ITS A MARK
CAF BIT7 # NOT A MARK, SEE IF MKREJECT
EXTEND
RAND NAVKEYIN
CCS A
TC MKREJECT # ITS A MARK REJECT
KEYCALL CAF OCT37 # NOT MARK OR MKREJECT, SEE IF KEYCODE
EXTEND
RAND NAVKEYIN
EXTEND
BZF +3 # IF NO INBITS
TC POSTJUMP
CADR KEYCOM # IT,S A KEY CODE, NOT A MARK.
+3 TC ALARM # ALARM IF NO INBITS
OCT 113
TC RESUME
# PROGRAM NAME - MARKCONT DATE - 19 SEPT 1967
# PROGRAM MODIFIED BY 258/278 PROGRAMMERS LOG SECTION SXTMARK
# MOD BY - R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
#
# FUNCTIONAL DESCRIPTION-
# MARKCONT IS USED TO PERFORM A SPECIAL MARK FUNCTION FOR R21, TO EXECUTE A SPECIAL DISPLAY OF OPTICS AND TIME OR
# TO PERFORM A MARK OF A STAR OR LAND SIGHTING BASED UPON FLASHING V-N.
#
# CALLING SEQUENCE-
# FROM MARKDIF
#
# NORMAL EXIT MODE-
# TASKOVER
#
# ALARM OR ABORT EXIT MODE-
# ALARM AND TASKOVER
#
# OUTPUT-
# 1) FOR R21-
# EBANK=EBANK7
# MRKBUF1 TO MRKBUF1+6 = TIME2,TIME1,CDUY,OPTICX,CDUZ,OPTICSY,CDUX OF CURRENT R21 MARK FUNCTION.
# MRKBUF2 TO MRKBUF2+6 CONTAINS PREVIOUS R21 MARK VALUES.
# 2) FOR SPECIAL DISPLAY JOB-
# RUPTREG1 AND MRKBUF1 = CDUS,RUPTREG2 AND MRKBUF1+1 = CDUT.
# RUPTREG3 AND MRKBUF1+2 = TIME2,RUPTREG4 AND MRKBUF1+3 = TIME1
# 3) FOR NORMAL MARKING-
# DECREMENT BITS14-12 OF MARKSTAT BY 1,
# BIT10 MARKSTAT SET TO 1, INCREMENT QPRET BY 7,
# STORE TIME2,TIME1,CDUY,CDUS,CDUZ,CDUT AND CDUX IN VAC+1 TO VAC+7
#
# ERASABLE INITIALIZATION-
# 1) FOR R21-
# BIT14 OF STATE+2 =1, MRKBUF1 TO MRKBUF1+6, ITEMP1, RUPTREG3,
# RUPTSTOR TO RUPTSTOR+6 EXCEPT RUPTSTOR+4
# 2) FOR SPECIAL DISPLAY JOB-
# BIT14 OF STATE+2 =0, MARKSTAT =+0, RUPTREG1,RUPTREG2,RUPTREG3
# RUPTREG4,RUPTSTOR,RUPTSTOR+1,RUPTSTOR+3,RUPTSTOR+5,
# BIT12 OF STATE+5 (V59 FLAG), MRKBUF1 THRU MRKBUF1+3
# 3) FOR NORMAL MARKING-
# BIT14 OF STATE+2 =0, MARKSTAT =VAC ADDRESS,A REG,ITEMP1,RUPTREG3,
# RUPTSTOR TO RUPTSTOR+6 EXCEPT RUPTSTOR+4
#
# DEBRIS-
# 1) FOR R21-
# A, ITEMP1, MRKBUF1, MRKBUF2
# 2) FOR SPECIAL DISPLAY JOB-
# A,RUPTREG1,RUPTREG2,RUPTREG3,RUPTREG4,MPAC TO MPAC+3
# 3) FOR NORMAL MARKING-
# A,MARKSTAT,ITEMP1,QPRET,VAC+1 TO VAC+7 OF VAC AREA IN USE
MARKCONT CAF BIT14
MASK STATE +2 # R21 MARK (SPECIAL MARKING FOR R21)
EXTEND
BZF MARKET # NOT SET THEREFORE REGULAR MARKING
MARKIT1 CAF SIX # SPECIAL FOR R21
TC GENTRAN # TRANSFER MRKBUF1 TO MRKBUF2
ADRES MRKBUF1
ADRES MRKBUF2
CAF SIX # TRANSFER CURRENT MARK DATA TO MARKBUF1
TC GENTRAN
ADRES MKT2T1
ADRES MRKBUF1
TCF TASKOVER
MARKET CCS MARKSTAT # SEE IF MARKS CALLED FOR
TC MARK2 # COLLECT MARKS
CAF TWO # IS MARKING SYSTEM IN USE (BIT2)
MASK EXTVBACT
EXTEND
BZF MARKET3 # MARKING NOT CALLED FOR
CAF BIT12
MASK STATE +5 # V59FLAG
EXTEND
BZF MARKET3 # IF V59FLAG NOT SET-MARK UNCALLED FOR
CAF PRIO5 # CALIBRATION MARK (SET) FOR P23
TC NOVAC # SPECIAL DISPLAY JOB
EBANK= MRKBUF1
2CADR MARKDISP
CAF SIX
TC GENTRAN # TRANSFER MARK DATA TO MARKDOWN
ADRES MKT2T1
ADRES MARKDOWN
CAF SIX
TC GENTRAN # TRANSFER MARK DATA TO MRKBUF1 FOR
ADRES MKT2T1 # SPECIAL DISPLAY OF SHAFT AND TRUNNION
ADRES MRKBUF1 # IF V59 ACTING
TCF TASKOVER
MARKET3 TC ALARM
OCT 122 # MARKING NOT CALLED FOR
TCF TASKOVER
114ALM TC ALARM # MARK NOT WANTED
OCT 114
TCF TASKOVER
# STORE MARK DATA IN MKVAC AND INCREMENT POINTER
MARK2 AD 74K # SEE IF MARKS WANTED-REDUCE MARKS WANTED
EXTEND
BZMF 114ALM # MARK NOT WANTED-ALARM
TS MARKSTAT
COM
MASK BIT10 # SET BIT10 TO ENABLE REJECT
ADS MARKSTAT
MASK LOW9
TS ITEMP1
INDEX A
XCH QPRET # PICK UP MARK SLOT-POINTER
TS ITEMP2 # SAVE CURRENT POINTER
AD SEVEN # INCREMENT POINTER
INDEX ITEMP1
TS QPRET # STORE ADVANCED POINTER
VACSTOR EXTEND
DCA MKT2T1
INDEX ITEMP2
DXCH 0
CA MKCDUY
INDEX ITEMP2
TS 2
CA MKCDUS
INDEX ITEMP2
TS 3
CA MKCDUZ
INDEX ITEMP2
TS 4
CA MKCDUT
INDEX ITEMP2
TS 5
CA MKCDUX
INDEX ITEMP2
TS 6
CAF PRIO34 # IF ALL MARKS MADE FLASH VB50
MASK MARKSTAT
EXTEND
BZF +2
TCF TASKOVER
CAF PRIO32
TC NOVAC
EBANK= MARKSTAT
2CADR MKVB50
TCF TASKOVER
# PROGRAM NAME - MKREJECT DATE - 5 APRIL 1967
# PROGRAM MODIFIED BY 258/278 PROGRAMMERS LOG SECTION SXTMARK
# MOD BY - R. MELANSON TO ADD DOCUMENTATION ASSEMBLY SUNDISK REV. 116
#
# FUNCTIONAL DESCRIPTION-
# ROUTINE ALLOWS OPERATOR TO REJECT MARK MADE PRIOR TO ACCEPTANCE AND ALLOWS A NEW MARK TO BE MADE BY ASTRONAUT
#
# CALLING SEQUENCE-
# FROM MARKRUPT IF BIT7 OF CHANNEL 16 IS 1.
#
# NORMAL EXIT MODE-
# RESUME
#
# ALARM OR ABORT EXIT MODE-
# ALARM AND RESUME
#
# OUTPUT-
# 1) FOR R21-
# MRKBUF1 SET TO -1
# 2) FOR NORMAL MARKING-
# BIT10 MARKSTAT =0, INCREMENT NO. MARKS BY 1, DECREMENT QPRET BY 7
#
# ERASABLE INITIALIZATION-
# 1) FOR R21-
# BIT14 OF STATE+2 SET TO 1
# 2) FOR NORMAL MARKING-
# BIT14 OF STATE+2 SET TO 0, MARKSTAT,QPRET
#
# DEBRIS-
# 1) FOR R21-
# A,MARKSTAT,EBANK
# 2) FOR NORMAL MARKING-
# A,MARKSTAT,ITEMP1,QPRET
MKREJECT CAF BIT14
MASK STATE +2 # R21 MARK (SPECIAL MARKING FOR R21)
EXTEND
BZF MRKREJCT # NOT SET THEREFORE REGULAR REJECT
CA NEGONE # -1 (FOR R22)
TS MRKBUF1 # -0 IN TIME IS FLAG TO R22 SIGNIFYING A
TC RESUME # REJECTED MARK
MRKREJCT CCS MARKSTAT # SEE IF MARKS BEING ACCEPTED
TC REJECT2
TC ALARM # MARKS NOT BEING ACCEPTED
OCT 112
TC RESUME
REJECT2 CS BIT10 # SEE IF MARK HAD BEEN MADE SINCE LAST
MASK MARKSTAT # REJECT, AND SET BIT10 TO ZERO TO
XCH MARKSTAT # SHOW MARK REJECT
MASK BIT10
CCS A
TC REJECT3
TC ALARM # DONT ACCEPT TWO REJECTS TOGETHER
OCT 110
TC RESUME
REJECT3 CAF LOW9 # DECREMENT POINTER TO REJECT MARK
MASK MARKSTAT
TS ITEMP1
CS SEVEN
INDEX ITEMP1
ADS QPRET # NEW POINTER
CAF BIT12 # INCREMENT MARKS WANTED AND IF FIELD
AD MARKSTAT # IS NOW NON-ZERO, CHANGE TO VB51 TO
XCH MARKSTAT # INDICATE MORE MARKS WANTED
MASK PRIO34 # INDICATE MORE MARKS WANTED
CCS A
TC RESUME
CAF PRIO32
TC NOVAC
EBANK= MARKSTAT
2CADR MKVB51
TC RESUME
# PROGRAM DESCRIPTION MKVB51 AND MKVB50
#
# AUTHOR-BARNERT DATE-2-15-67 MOD-0
# PURPOSE FLASH V51N70,V51N43, OR V51 TO REQUEST MARKING,
# AND V50N25 R1=16 TO REQUEST TERMINATE MARKING
#
# CALLING SEQUENCE AS JOB WITHIN SXTMARK
#
# EXIT TO ENDMARK UPON RECEIPT OF V33, V34 CAUSES GOTOPOOH, ENTER
# RECYCLES THE DISPLAY
#
# NOTE- SXTMARK AUTOMATICALLY CHANGES FROM CALLING MKVB51 TO MKVB50 WHEN
# SUFFICIENT MARKS HAVE BEEN MADE, AND THE REVERSE WHEN A MARK
# REJECT REDUCES THE NUMBER MADE BELOW THAT REQUIRED
#
# SUBROUTINES CALLED- BANKCALL, GOMARK2, GOODEND, ENDMARK, WAITLIST
#
# ALARM OR ABORT MODES - NONE
#
# ERASABLE USED-VERBREG,MARKSTAT,QPRET,DSPTEM1
#
# OUTPUT MARKSTAT = VAC ADDRESS
# QPRET = NO. MARKS
MKVB51 TC BANKCALL # CLEAR DISPLAY FOR MARK VERB
CADR KLEENEX
CAF VB51 # DISPLAY MARK VB51
TC BANKCALL
CADR GOMARK4
TCF TERMSXT # VB34-TERMINATE
TCF ENTANSWR # V33-PROCEED-MARKING DONE
TCF MKVB5X # ENTER-RECYCLE TO INITIAL MARK DISPLAY
TERMSXT TC CLEARMRK # CLEAR MARK ACTIVITY.
TC CHECKMM
MM 03
TCF +2
TC TERMP03
TC POSTJUMP
CADR TERM52
TERMP03 TC UPFLAG
ADRES TRM03FLG
ENTANSWR CAF LOW9 # PUT VAC ADR IN MARKSTAT AND NO. OF
MASK MARKSTAT # MARKS MADE IN QPRET BEFORE LEAVING
TS MARKSTAT # SXTMARK
COM
INDEX MARKSTAT
AD QPRET
EXTEND
BZMF JAMIT # NO MARKS MADE, SHOW IT IN QPRET, R53
EXTEND # WILL PICK IT UP AND RECYCLE
MP BIT12 # THIS PUTS NUMBER MARKS-1 IN A
AD ONE
JAMIT INDEX MARKSTAT # STORE NO OF MARKS MADE
TS QPRET
INHINT # SERVICE OPTSTALL INTERFACE WITH
CAF FIVE
TC WAITLIST
EBANK= MARKSTAT
2CADR ENDMARKS
TC ENDMARK # KNOCKS DOWN MARKING FLAG + DOES ENDOFJOB
ENDMARKS CAF ONE
TC IBNKCALL
CADR GOODEND
MKVB5X CAF PRIO34
MASK MARKSTAT # RE-DISPLAY VB51 IF MORE MARKS WANTED
CCS A # AND VB50 IF ALL IN
TCF MKVB51
MKVB50 CAF R1D1 # OCT 16
TS DSPTEM1
CAF V50N25
TCF MKVB51 +3
V50N25 VN 5025
VB51 VN 5100
OCT37 = LOW5
# PROGRAM NAME - MARKIT DATE - 19 SEPT 1967
#
# CALLING SEQUENCE
# FROM MARKRUPT IF CHAN 16 BIT 6 = 1
#
# EXIT
# RESUME
#
# INPUT
# CDUCHKWD. ALSO ALL INITIALIZATION FOR MARKCONT
#
# OUTPUT
# MKT2T1,MKCDUX,MKCDUY,MKCDUZ,MKCDUS,MKCDUT
#
# ALARM EXIT
# NONE
MARKIT CCS CDUCHKWD
TCF +3 # DELAY OF CDUCHKWD CS IF PNZ
TCF +2
CAF ZERO
AD ONE # 10 MS IF NO CHECK
TC WAITLIST
EBANK= MRKBUF1
2CADR MARKDIF
TCF RESUME
SETLOC SXTMARK1
BANK
COUNT 10/SXTMK
# PROGRAM NAME - MARKDIF DATE- 19 SEPT 1967
#
# CALLING SEQUENCE
# WAITLIST FROM MARKIT
#
# EXIT
# TASKOVER OT IBNKCALL TO MARKCONT
#
# INPUT
# OUTPUT FROM MARKIT, INPUT TO MARKCONT, CDUCHKWD
#
# OUTPUT
# RUPTSTOR - RUPTSTOR+3, RUPTREG3, RUPTSTOR+5 - RUPTSTOR+6
#
# ALARM EXIT
# ALARM AND TASKOVER
MARKDIF CA CDUCHKWD # IF DELAY CHECK IS ZERO OR NEG, ACP MARK
EXTEND
BZMF MKACPT
CS BIT1
TS MKNDX # SET INDEX -1
CA MKCDUX
TC DIFCHK # SEE IF VEHICLE RATE TO MUCH AT MARK
CA MKCDUY
TC DIFCHK
CA MKCDUZ
TC DIFCHK
MKACPT TC IBNKCALL
CADR MARKCONT # MARK DATA OK, WHAT DO WE DO WITH IT
DIFCHK INCR MKNDX # INCREMENT INDEX
EXTEND
INDEX MKNDX
MSU CDUX # GET MARK(ICDU) - CURRENT(ICDU)
CCS A
TCF +4
TC Q
TCF +2
TC Q
AD NEG2 # SEE IF DIFFERENCE GREATER THAN 3 BITS
EXTEND
BZMF -3 # NOT GREATER
TC ALARM # COUPLED WITH PROGRAM ALARM
OCT 00121
TCF TASKOVER # DO NOT ACCEPT