This repository has been archived by the owner on Dec 24, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 91
/
Copy pathDAKAA.LST.txt
10131 lines (9935 loc) · 557 KB
/
DAKAA.LST.txt
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
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 1
DAKAAT MAC 19-JAN-77 13:31 DIAGNOSTIC PARAMETERS SEQ 0007
1 ;DAKAA
2
3
4
5 000002 DECVER==2
6 000000 MCNVER==0
7
8 XLIST
9 LIST
10 LALL
11 NAME \MCNVER,\DECVER^
12
13 TITLE DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2
14 ^
15
16 ;TEST DESIGNED FOR INITIAL DEBUGGING OF PROCESSOR HARDWARE
17 ;AND TO DETECT (SOLID) FAILURES IN THE FIELD.
18
19 ;COPYRIGHT 1972,1977
20 ;DIGITAL EQUIPMENT CORPORATION
21 ;MARLBORO, MASS. 01752
22
23 ;JOHN R. KIRCHOFF
24 ;DICK MALISKA
25
26 000137 LOC 137
27 000137 000000 000002 MCNVER,,DECVER
28
29 NOSYM
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 2
DAKAAT MAC 19-JAN-77 13:31 DIAGNOSTIC PARAMETERS SEQ 0008
30 SUBTTL DIAGNOSTIC PARAMETERS
31
32 ;PARAMETER DEFINITIONS
33 000001 EXCASB==1
34 000001 USRASB==1
35 000001 KA10==1
36
37 ;FLAG DEFINITIONS
38 010000 USERF=10000 ;USER MODE FLAG
39
40
41 ;MACROS
42
43 ; STOP - USED FOR SCOPE LOOP, IF INSTRUCTION FAILS, CHANGE (JUMPA .+1)
44 ; TO A (JUMPA .-X) TO CYCLE ON FAILING INSTRUCTION
45
46 DEFINE STOP (A)<
47 HALT .+1 ;TEST FAILED IF PROGRAM HALTS HERE
48 JUMPA .+1 ;IF TEST FAILS, CHANGE THIS INSTRUCTION (JUMPA .+1) TO
49 ;JUMPA X (X IS THE ADDRESS OF THE FIRST INSTRUCTION
50 ;IN THE SUBTEST) TO LOOP ON ERROR>
51
52 ;SPECIAL FEATURE PARAMETERS
53
54 030742 SADR1=A00
55 030742 SADR2=A00
56 030742 SADR3=A00
57 030742 SADR4=A00
58 254000 030742 SADR5=JRST A00
59 254000 030742 SADR6=JRST A00
60 254000 030742 SADR7=JRST A00
61 254000 030742 SADR8=JRST A00
62 254000 030742 SADR9=JRST A00
63 254000 030742 SADR10=JRST A00
64 254000 030742 SADR11=JRST A00
65
66 000000 PAREA0=0
67 000000 PAREA1=0
68 000000 PAREA2=0
69 444153 414100 PAREA3=SIXBIT/DAKAA/
70 645560 000000 PAREA4=SIXBIT/TMP/
71 000000 PAREA5=0
72 000000 PAREA6=0
73 001000 ITERAT==1000
74 777777 777777 PGMEND==-1
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 1
PARAM KLM 18-JAN-77 11:38 *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, JAN 18,1977 SEQ 0009
75 SUBTTL *PARAM* CONSOLE DATA SWITCH ASSIGNMENTS, JAN 18,1977
76
77 DEFINE S,<;*********************************************************************>
78
79 S^;*********************************************************************^
80 ;*DATA SWITCHES (READ FROM CONSOLE IN EXEC MODE OR TYPED IN IN USER MODE)
81 ;*LEFT HALF SWITCHES ARE PRE-ASSIGNED FOR SUBROUTINE PACKAGE USE
82 ;*AND CONTROL LOOPING, PRINTING (TTY OR OTHER DEVICE) AND MISC. FUNCTIONS
83 S^;*********************************************************************^
84
85 400000 ABORT== 400000 ;ABORT PROGRAM ON PASS COMPLETION
86 200000 RSTART==200000 ;RESTART TEST, PRINT TOTALS
87 100000 TOTALS==100000 ;PRINT TOTALS, CONTINUE
88
89 040000 NOPNT== 040000 ;INHIBIT ALL PRINT/TYPE OUT (EXCEPT FORCED)
90 020000 PNTLPT==020000 ;PRINT ALL DATA ON LPT (LOGICAL DEVICE, USER MODE)
91 010000 DING== 010000 ;RING BELL ON ERROR
92
93 004000 LOOPER==004000 ;ENTER EXERCISE/CHECK LOOP ON ERROR
94 002000 ERSTOP==002000 ;HALT ON TEST ERROR
95 001000 PALERS==001000 ;PRINT ALL ERRORS
96
97 000400 RELIAB==000400 ;RELIABILITY MODE
98 000200 TXTINH==000200 ;INHIBIT ERROR TEXT
99 000100 INHPAG==000100 ;INHIBIT PAGING
100
101 000040 MODDVC==000040 ;MODIFY DEVICE CODE
102 000020 INHCSH==000020 ;INHIBIT CACHE
103 000010 OPRSEL==000010 ;OPERATOR SELECTION
104
105 000004 CHAIN== 000004 ;CHAIN CONTROL SWITCH
106
107 000002 KAHZ50==000002 ;KA10 50 HERTZ POWER
108
109 ;SWITCH 17 RESERVED !!!
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 2
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0010
110 SUBTTL *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977
111
112 S^;*********************************************************************^
113 ;*SPECIAL SUBPROGRAM LINKAGES
114 S^;*********************************************************************^
115
116 027772 FSELNK= 27772 ;FILE SELECT LINK
117 027773 FRDLNK= 27773 ;FILE READ LINK
118 027774 LDLNK= 27774 ;LOAD LINKAGE ADDRESS
119 027775 DDTLNK= 27775 ;DDT LINKAGE ADDRESS
120 027776 MODLNK= 27776 ;OPERATIONAL MODE CHECK LINKAGE ADDRESS
121 027777 SUBLNK= 27777 ;SUBROUTINE LINKAGE ADDRESS
122
123 S^;*********************************************************************^
124 ;*SPECIAL SUBROUTINE FATAL HALTS
125 ;*USED TO REPORT ERRORS THAT CAUSE THE SUBROUTINES TO BE UNUSABLE
126 S^;*********************************************************************^
127
128 ;ADDRESS TAG REASON
129 ;---------------------
130
131 ; 1010 NOEXEC ;PROGRAM NOT CODED FOR EXEC MODE OPERATION
132 ; 1011 PLERR ;FATAL PUSH LIST POINTER ERROR
133 ; 1012 PLERR1 ;INITIAL PUSH LIST POINTER ERROR
134 ; 1013 MUOERR ;MUUO WITH LUUO HANDLER WIPED OUT
135 ; 1014 DTEBER ;DTE20 INTERRUPT WITHOUT DOORBELL
136 ; 1015 DTECER ;DTE20 CLOCK INTERRUPT WITHOUT FLAG SET
137 ; 1016 CPIERR ;CPU INITIALIZATION ERROR
138 ; 1017 EOPERR ;END OF PROGRAM ERROR
139 ; 1020 LUOERR ;INTERRUPT WITH LUUO HANDLER WIPED OUT
140
141 S^;*********************************************************************^
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 3
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0011
142 S^;*********************************************************************^
143 ;OPERATOR DEFINITIONS (NON-UUO'S)
144 S^;*********************************************************************^
145
146 260740 000000 OPDEF GO [PUSHJ P,] ;SUBROUTINE CALL
147 263740 000000 OPDEF RTN [POPJ P,] ;SUBROUTINE RETURN
148 261740 000000 OPDEF PUT [PUSH P,] ;PUT DATA ON PUSH LIST
149 262740 000000 OPDEF GET [POP P,] ;GET DATA FROM PUSH LIST
150 254000 000000 OPDEF PJRST [JRST ] ;JRST TO ROUTINE THAT RTN'S
151 254200 000000 OPDEF HALT [JRST 4,] ;DEFINITION FOR DDT
152 254100 000000 OPDEF JRSTF [JRST 2,] ;DEFINITION FOR DDT
153 254500 000000 OPDEF JEN [JRST 12,] ;DEFINITION FOR DDT
154
155 S^;*********************************************************************^
156 ;*SUBROUTINE INITIALIZATION CALL
157 S^;*********************************************************************^
158
159 265000 030011 OPDEF PGMINT [JSP 0,SBINIT] ;SUBROUTINE INITIALIZATION
160
161 S^;*********************************************************************^
162 ;*HALTING UUO'S (A MORE GRACEFUL HALT THAN SIMPLY USING THE HALT INSTRUCTION).
163 S^;*********************************************************************^
164
165 037640 000004 OPDEF FATAL [37B8!15B12!4] ;FATAL PROGRAMMING HALT
166 037600 000004 OPDEF ERRHLT [37B8!14B12!4] ;PROGRAM ERROR HALT
167
168 S^;*********************************************************************^
169 ;*TERMINAL INPUT UUO'S
170 ;*ALWAYS COME FROM THE CONSOLE TERMINAL IN EXEC MODE OR THE
171 ;*CONTROLLING TERMINAL (REAL TERMINAL OR PTY) IN USER MODE.
172 S^;*********************************************************************^
173
174 037000 000003 OPDEF TTICHR [37B8!0B12!3] ;TTY, INPUT ANY CHARACTER
175 037040 000003 OPDEF TTIYES [37B8!1B12!3] ;TTY, NORMAL RETURN Y
176 037100 000003 OPDEF TTINO [37B8!2B12!3] ;TTY, NORMAL RETURN N
177 037140 000003 OPDEF TTIOCT [37B8!3B12!3] ;TTY, INPUT OCTAL WORD
178 037200 000003 OPDEF TTIDEC [37B8!4B12!3] ;TTY, INPUT DECIMAL WORD
179 037240 000003 OPDEF TTICNV [37B8!5B12!3] ;TTY, INPUT CONVERTABLE WORD
180 037300 000003 OPDEF TTLOOK [37B8!6B12!3] ;TTY, KEYBOARD CHECK
181 037340 000003 OPDEF TTALTM [37B8!7B12!3] ;TTY, ALT-MODE CHECK
182 037400 000003 OPDEF TTSIXB [37B8!10B12!3] ;TTY, INPUT SIXBIT WORD
183 037440 000003 OPDEF TTYINP [37B8!11B12!3] ;TTY, IMAGE MODE INPUT
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 4
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0012
184 ;*TERMINAL OUTPUT UUO'S.
185
186 037000 000000 OPDEF PNTA [37B8!0B12!0] ;PRINT ASCII WORD
187 037000 000001 OPDEF PNTAF [37B8!0B12!1] ;PRINT ASCII WORD FORCED
188 037740 000000 OPDEF PNTAL [37B8!17B12!0] ;PRINT ASCIZ LINE
189 037740 000001 OPDEF PNTALF [37B8!17B12!1] ;PRINT ASCIZ LINE FORCED
190 037600 000003 OPDEF PSIXL [37B8!14B12!3] ;PRINT SIXBIT'Z LINE
191 037640 000003 OPDEF PSIXLF [37B8!15B12!3] ;PRINT SIXBIT'Z LINE FORCED
192 037000 000000 OPDEF PNTMSG [37B8!0B12!0] ;PRINT MESSAGE IMMEDIATE
193 037040 000000 OPDEF PNTMSF [37B8!1B12!0] ;PRINT MESSAGE IMMEDIATE FORCED
194 037100 000000 OPDEF PSIXM [37B8!2B12!0] ;PRINT SIXBIT'Z MSG IMMEDIATE
195 037200 000000 OPDEF PSIXMF [37B8!4B12!0] ;PRINT SIXBIT'Z MSG IMM FORCED
196 037000 000000 OPDEF PNTCI [37B8!0B12!0] ;PRINT CHARACTER IMMEDIATE
197 037040 000000 OPDEF PNTCIF [37B8!1B12!0] ;PRINT CHARACTER IMMEDIATE FORCED
198 037500 000000 OPDEF PNTCHR [37B8!12B12!0] ;PRINT CHARACTER
199 037500 000001 OPDEF PNTCHF [37B8!12B12!1] ;PRINT CHARACTER FORCED
200 037040 000000 OPDEF PNT1 [37B8!1B12!0] ;PRINT ONE OCTAL DIGIT
201 037040 000001 OPDEF PNT1F [37B8!1B12!1] ;PRINT 1 OCTAL DIGIT FORCED
202 037100 000000 OPDEF PNT2 [37B8!2B12!0] ;PRINT TWO OCTAL DIGITS
203 037100 000001 OPDEF PNT2F [37B8!2B12!1] ;PRINT 2 OCTAL DIGITS FORCED
204 037140 000000 OPDEF PNT3 [37B8!3B12!0] ;PRINT THREE OCTAL DIGITS
205 037140 000001 OPDEF PNT3F [37B8!3B12!1] ;PRINT THREE OCTAL DIGITS FORCED
206 037200 000000 OPDEF PNT4 [37B8!4B12!0] ;PRINT FOUR OCTAL DIGITS
207 037200 000001 OPDEF PNT4F [37B8!4B12!1] ;PRINT FOUR OCTAL DIGITS FORCED
208 037240 000000 OPDEF PNT5 [37B8!5B12!0] ;PRINT FIVE OCTAL DIGITS
209 037240 000001 OPDEF PNT5F [37B8!5B12!1] ;PRINT FIVE OCTAL DIGITS FORCED
210 037300 000000 OPDEF PNT6 [37B8!6B12!0] ;PRINT SIX OCTAL DIGITS
211 037300 000001 OPDEF PNT6F [37B8!6B12!1] ;PRINT SIX OCTAL DIGITS FORCED
212 037340 000000 OPDEF PNT7 [37B8!7B12!0] ;PRINT 7 OCTAL DIGITS
213 037340 000001 OPDEF PNT7F [37B8!7B12!1] ;PRINT 7 OCTAL DIGITS FORCED
214 037440 000000 OPDEF PNT11 [37B8!11B12!0] ;PRINT 11 OCTAL DIGITS
215 037440 000001 OPDEF PNT11F [37B8!11B12!1] ;PRINT 11 OCTAL DIGITS FORCED.
216 037400 000000 OPDEF PNTADR [37B8!10B12!0] ;PRINT PHYSICAL ADDRESS
217 037400 000001 OPDEF PNTADF [37B8!10B12!1] ;PRINT PHYSICAL ADDRESS FORCED
218 037600 000000 OPDEF PNTOCT [37B8!14B12!0] ;PRINT FULL WORD OCTAL
219 037600 000001 OPDEF PNTOTF [37B8!14B12!1] ;PRINT FULL WORD OCTAL FORCED
220 037540 000000 OPDEF PNTHW [37B8!13B12!0] ;PRINT OCTAL HALF WORDS, 6 SP 6
221 037540 000001 OPDEF PNTHWF [37B8!13B12!1] ;PRINT OCTAL HALF WORDS, 6 SP 6 FORCED
222 037700 000003 OPDEF PNTOCS [37B8!16B12!3] ;PRINT OCTAL, SUPPRESS LEADING 0'S
223 037740 000003 OPDEF PNTOCF [37B8!17B12!3] ;PRINT OCTAL, SUPPRESS LEADING 0'S FORCED
224 037640 000000 OPDEF PNTDEC [37B8!15B12!0] ;PRINT DECIMAL, SUPRESS LEADING 0'S
225 037640 000001 OPDEF PNTDCF [37B8!15B12!1] ;PRINT DECIMAL, SUPRESS LEADING 0'S FORCED
226 037700 000000 OPDEF PNTDS [37B8!16B12!0] ;PRINT DECIMAL, SPACES FOR LD 0'S
227 037700 000001 OPDEF PNTDSF [37B8!16B12!1] ;PRINT DECIMAL, SPACES FOR LD 0'S FORCED
228 037200 000002 OPDEF PNTNM [37B8!4B12!2] ;PRINT PROGRAM NAME
229 037000 000002 OPDEF PNTSIX [37B8!0B12!2] ;PRINT SIXBIT WORD
230 037040 000002 OPDEF PNTSXF [37B8!1B12!2] ;PRINT SIXBIT WORD FORCED
231 037240 000002 OPDEF DROPDV [37B8!5B12!2] ;CLOSE LOGICAL FILE, USER MODE
232 037100 000002 OPDEF PNTCW [37B8!2B12!2] ;PRINT DF10 CONTROL WORD
233 037140 000002 OPDEF PNTCWF [37B8!3B12!2] ;PRINT DF10 CONTROL WORD FORCED
234 037000 030242 OPDEF PCRL [37B8!0B12!CRLF] ;PRINT CARRIAGE RETURN/LINE FEED
235 037040 030242 OPDEF PCRLF [37B8!1B12!CRLF] ;PRINT CARRIAGE RETURN/LINE FEED FORCED
236 037000 000040 OPDEF PSP [37B8!0B12!40] ;PRINT SPACE
237 037040 000040 OPDEF PSPF [37B8!1B12!40] ;PRINT SPACE FORCED
238 037000 030243 OPDEF PCRL2 [37B8!0B12!CRLF2] ;PRINT CARRIAGE RETURN/LINE FEED (TWICE)
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 4-1
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0013
239 037040 030243 OPDEF PCRL2F [37B8!1B12!CRLF2] ;PRINT CARRIAGE RETURN/LINE FEED (TWICE) FORCED
240 037040 000007 OPDEF PBELL [37B8!1B12!7] ;PRINT TTY BELL
241
242 037040 000026 OPDEF PFORCE [37B8!1B12!26] ;PRINT FORCE, CONTROL O OVERRIDE
243
244 DEFINE PMSG (ARG),<
245 PSIXM [SIXBIT\ARG'_\]>
246
247 DEFINE PMSGF (ARG),<
248 PSIXMF [SIXBIT\ARG'_\]>
249
250 ;*SIXBTZ -- MACRO TO GENERATE SIXBIT DATA FOR PRINTING
251 ;* CONSERVES CORE OVER ASCIZ
252
253 DEFINE SIXBTZ (ARG),< [SIXBIT\ARG'_\]>
254
255 ;*CONSOLE SWITCH INPUT UUO.
256 ;*READS CONSOLE SWITCHES IF IN EXEC MODE OR ASKS FOR THEM IF
257 ;* USER MODE.
258
259 037400 000002 OPDEF SWITCH [37B8!10B12!2] ;INPUT CONSOLE SWITCHES
260
261 ;*CLOCK INITIALIZATION UUO - TO SET DESIRED CLOCK OPERATION
262 ;*EITHER IGNORE CLOCK, ONLY LET IT TICK OR CAUSE INTERRUPT TO OCCUR.
263
264 037540 000004 OPDEF CLOKOP [37B8!13B12!4] ;CLOCK OPERATION UUO - PDP-11 CLOCK
265 037200 000004 OPDEF MTROP [37B8!4B12!4] ;CLOCK OPERATION UUO - DK20 METER
266
267 ;*KL10 ONLY CACHE OPERATION UUO'S
268
269 037040 000004 OPDEF CINVAL [37B8!1B12!4] ;CACHE INVALIDATE
270 037100 000004 OPDEF CFLUSH [37B8!2B12!4] ;CACHE FLUSH
271 037140 000004 OPDEF CWRTBI [37B8!3B12!4] ;CACHE WRITE-BACK & INVALIDATE
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 5
PARAM KLM 18-JAN-77 11:38 *PARAM* PROGRAM/SUBROUTINE PARAMETERS, JAN 18,1977 SEQ 0014
272 ;*END OF PASS/PROGRAM UUOS
273
274 ;PERFORMS THE END OF PASS FUNCTIONS. INCREMENT PASS COUNT,
275 ;*DECREMENT ITERATION COUNT, CHECK IF FINISHED WITH THIS PROGRAM ETC.
276
277 037500 000004 OPDEF ENDUUO [37B8!12B12!4] ;UUO TO DISPLAY LIGHTS
278 037700 000004 OPDEF EOPUUO [37B8!16B12!4] ;END OF PROGRAM UUO
279
280 ;*MEMORY MANAGEMENT UUO'S
281 ;*UUO'S TO PERFORM VARIOUS MEMORY FUNCTIONS. MAPPING, ZEROING, PAGING,
282 ;*ADDRESS CONVERSION, ETC...
283
284 037000 000004 OPDEF MAPMEM [37B8!0B12!4] ;MAP MEMORY
285 037500 000002 OPDEF MEMZRO [37B8!12B12!2] ;ZERO MEMORY
286 037440 000002 OPDEF MEMSEG [37B8!11B12!2] ;SETUP MEMORY SEGMENT
287 037540 000002 OPDEF MAPADR [37B8!13B12!2] ;VIRTUAL TO PHYSICAL ADR CONVERT
288 037640 000002 OPDEF MAPCNK [37B8!15B12!2] ;MAP MEMORY CHUNK
289 037600 000002 OPDEF MAPSET [37B8!14B12!2] ;SET KI10 EXEC PAGE MAP
290 037740 000002 OPDEF MAPPNT [37B8!17B12!2] ;PRINT MEMORY MAP
291
292 ;*DEVICE CODE MODIFICATION UUO
293 ;*ALLOWS THE MODIFICATION OF IOT'S TO ONE DEVICE TO BE CHANGED TO
294 ;*IOT'S TO A DIFFERENT DEVICE CODE.
295
296 037340 000002 OPDEF MODPCU [37B8!7B12!2] ;MODIFY PERHIPERAL CODE, USER
297 037300 000002 OPDEF MODPCP [37B8!6B12!2] ;MODIFY PERHIPERAL CODE, PROGRAM
298
299 030000 IFNDEF MODDVL,<MODDVL==BEGIN>
300 030000 IFNDEF MODDVU,<MODDVU==BEGIN>
301
302 ;*"DIAMON" FILE SELECTION AND READ UUOS
303
304 037240 000004 OPDEF FSELECT [37B8!5B12!4] ;FILE SELECTION
305 037300 000004 OPDEF FREAD [37B8!6B12!4] ;FILE READ - ASCII DATA
306 037340 000004 OPDEF FRD36 [37B8!7B12!4] ;FILE READ - 36 BIT DATA
307 037400 000004 OPDEF FRD8 [37B8!10B12!4] ;FILE READ - 8 BIT DATA
308
309 ;*KI10 ONLY UUO FOR PRINTING MARGIN VALUES
310
311 037700 000002 OPDEF PNTMGN [37B8!16B12!2] ;PRINT MARGIN VALUE
312
313 XLIST
314 IFNDEF KLOLD,<LIST
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 6
PARAM KLM 18-JAN-77 11:38 ERROR HANDLING UUO DEFINITIONS, JAN 18,1977 SEQ 0015
315 SUBTTL ERROR HANDLING UUO DEFINITIONS, JAN 18,1977
316
317 S^;*********************************************************************^
318 ;*ERROR HANDLER PARAMETERS
319 S^;*********************************************************************^
320
321 036000 000000 OPDEF ERUUO [36B8] ;ERROR CALL UUO
322 035000 000000 OPDEF ERLOOP [35B8] ;ERROR LOOP, CHECKS PC,REPT,REPT1,ERROR
323 035040 000000 OPDEF ERLP1 [35B8!1B12] ;ERROR LOOP IF PC'S MATCH
324 035100 000000 OPDEF ERLP2 [35B8!2B12] ;ERROR LOOP IF ANY ERROR
325 034000 000000 OPDEF REPTUO [34B8] ;REPEAT LOOP UUO
326
327 ;*THE ERROR HANDLER MACROS
328
329 ;*A MACRO TO REPORT AN ERROR AND LOOP
330
331 DEFINE ERROR (ADR,FORMAT,CORECT,ACTUAL,F,D,ERR)<
332 SALL
333 ERUUO FORMAT,[T,,[SIXBIT\F'_\]
334 CORECT,,ACTUAL
335 [SIXBIT\D'_\],,ERR]
336 XALL
337
338 ERLOOP ADR ;IF ERROR, LOOP TO ADR
339 >
340
341 ;*A MACRO TO REPORT AN ERROR AND NOT LOOP
342
343 DEFINE ERROR1 (FORMAT,CORECT,ACTUAL,F,D,ERR)<
344 SALL
345 ERUUO FORMAT,[T,,[SIXBIT\F'_\]
346 CORECT,,ACTUAL
347 [SIXBIT\D'_\],,ERR]
348 XALL >
349
350 >;END OF KLOLD CONDITIONAL
351
352 XLIST
353 LIST
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 1
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0016
354 SUBTTL *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977
355
356 030000 LOC 30000
357
358 S^;*********************************************************************^
359 ;*PROGRAM STARTING ADDRESSES
360 ;*THESE ADDRESSES CALL VARIOUS SPECIAL START ROUTINES AND OR OPTIONS
361 ;*NORMAL START ADDRESS IS 30000 ALL OTHERS ARE SPECIAL. INVOKED BECAUSE
362 ;*OF END OF PASS, POWER FAILURE, DDT START, RE-ENTERING(TYPICALLY USER
363 ;*MODE), OR ANY NUMBER OF SPECIAL FEATURE TESTS.
364 S^;*********************************************************************^
365
366 030000 254 00 1 00 027776 BEGIN: JRST @MODLNK ;STAND-ALONE START
367 030001 254 00 0 00 030712 $START: JRST START ;MODE CHECK STARTING ADDRESS
368
369 030002 254 00 1 00 027774 DIAGMN: JRST @LDLNK ;DIAGNOSTIC MONITOR START
370
371 030003 254 00 1 00 027774 SYSEXR: JRST @LDLNK ;SYSTEM EXERCISER START
372
373 030004 254 00 0 00 030742 SFSTRT: JRST SADR1 ;SPECIAL FEATURE START
374
375 030005 254 00 0 00 030742 PFSTRT: JRST SADR2 ;POWER FAIL RESTART
376
377 030006 254 00 0 00 030742 REENTR: JRST SADR3 ;REENTER START(USUALLY USER MODE ONLY)
378
379 030007 SRTDDT: ;COMMONLY MISTAKEN NAME FOR "DDTSRT"
380 030007 254 00 1 00 027775 DDTSRT: JRST @DDTLNK ;DDT START
381
382 030010 254 00 0 00 030741 BEGIN1: JRST STARTA ;LOOP START(END OF PASS COMES HERE)
383 030011 254 00 1 00 027777 SBINIT: JRST @SUBLNK ;PMGINT LINKAGE
384 030012 000000 000000 RETURN: 0 ;RETURN ADDRESS STORAGE
385
386 030013 254000 030742 START1: SADR7 ;OPTIONAL STARTING ADR/INSTRUCTIONS
387 030014 254000 030742 START2: SADR8 ; "
388 030015 254000 030742 START3: SADR9 ; "
389 030016 254000 030742 START4: SADR10 ; "
390 030017 254000 030742 START5: SADR11 ; "
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 2
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0017
391 S^;*********************************************************************^
392 ;*PROGRAM FIXED PARAMETER AREA
393 S^;*********************************************************************^
394
395 030020 444153 414100 PNTNAM: PAREA3 ;SIXBIT PROGRAM NAME
396 030021 645560 000000 PNTEXT: PAREA4 ;SIXBIT PROGRAM EXTENSION
397 030022 000000 000000 RANDBS: PAREA1 ;RANDOM BASE NUMBER
398 030023 000000 000000 SWTEXR: PAREA2 ;SYSTEM EXERCISER SWITCHES
399 030024 000000 001000 ITRCNT: ITERAT ;PROGRAM ITERATIONS
400 030025 000000 030725 $PNAME: PGMNAM ;POINTER TO PROGRAMS NAME
401 030026 000000 000002 $PVER: MCNVER,,DECVER ;MCN & DEC VERSION LEVEL
402 030027 000000 030000 $MODVL: MODDVL ;DEVICE CODE CHANGE LOWER LIMIT
403 030030 000000 030000 $MODVU: MODDVU ;DEVICE CODE CHANGE UPPER LIMIT
404 030031 777777 777777 $EMODE: IFNDEF EXCASB,<0> IFDEF EXCASB,<-1> ;EXEC ALLOWED
405 030032 777777 777777 $UMODE: IFNDEF USRASB,<0> IFDEF USRASB,<-1> ;USER ALLOWED
406 030033 000000 000000 $DSKUP: IFNDEF DSKUPD,<0> IFDEF DSKUPD,<-1> ;DISK UPDATE MODE
407 030034 000000 000000 $MMAP: IFNDEF MEMMAP,<0> IFDEF MEMMAP,<-1> ;ALLOW MEMORY RTNS
408 030035 000000 000000 PAREA7: PAREA5 ;OPTIONAL PARAMETER
409 030036 000000 000000 PAREA8: PAREA6 ;OPTIONAL PARAMETER
410
411 S^;*********************************************************************^
412 ;*PROGRAM VARIABLE PARAMETER AREA
413 S^;*********************************************************************^
414
415 030037 000000 000000 USER: 0 ; 0 = EXEC, -1 = USER MODE FLAG
416 030040 000000 000000 KAIFLG: 0 ;PROCESSOR TYPE, 0 = KA10, -1 = KI10
417 030041 000000 000000 KLFLG: 0 ;PROCESSOR TYPE, 0 = KA/KI, -1 = KL10
418 030042 777777 777777 MONFLG: -1 ;DIAG MONITOR SPECIAL USER FLAG
419 030043 000000 000000 MONCTL: 0 ;DIAG MON/SYS EXR FLAG
420 030044 000000 000000 MONTEN: 0 ;-1= LOADED BY 10
421 030045 000000 000000 CLOCKF: 0 ;CLOCK TICKED FLAG
422 030046 000000 000000 CONSW: 0 ;CONSOLE SWITCH SETTINGS
423 030047 000000 000000 PASCNT: 0 ;PROGRAM PASS COUNT
424 030050 000000 000000 RUNFLG: 0 ;PROGRAM RUN FLAG
425 030051 000000 000000 TESTPC: 0 ;SUBTEST PC
426 030052 000000 000000 ERRPC: 0 ;ERROR PC
427 030053 000000 000000 ERRTLS: 0 ;ERROR TOTALS
428 030054 000000 000000 TICKS: 0 ;PROGRAM RUNNING TIME
429 030055 000000 000000 MARGIN: 0 ;KI10 MARGIN WORD VALUE
430 030056 000000 000000 $ONETM: 0 ;SUBROUTINE INITIALIZATION FLAG
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 3
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0018
431 S^;*********************************************************************^
432 ;*SPECIAL PROGRAM DISPATCH ADDRESSES
433 S^;*********************************************************************^
434
435 030057 037 12 0 00 000004 BEGEND: ENDUUO ;END OF PASS
436 030060 254 00 0 00 030010 $BEND1: JRST BEGIN1 ;KEEP RUNNING PROGRAM
437 030061 037 16 0 00 000004 $BEND2: EOPUUO ;END OF PROGRAM - NO RETURN
438 030062 254000 030742 CNTLC: SADR5 ;CONTROL C XFER ADDRESS
439 030063 254000 030742 ALTMGO: SADR6 ;ALTMODE XFER ADDRESS
440 030064 CPOPJ1: ;SKIP RETURN
441 030064 350 00 0 17 000000 UUOSKP: AOS (P) ;SKIP RETURN FROM UUO
442 030065 CPOPJ: ;NON-SKIP REGULAR RETURN
443 030065 263 17 0 00 000000 UUOEXT: RTN ;UUO RETURN
444 030066 255 00 0 00 000000 UUORTN: JFCL ;ADDITIONAL USERS UUO ROUTINE
445 030067 255 00 0 00 000000 $UORTX: JFCL ;ADDITIONAL UUO LINKAGE
446 030070 255 00 0 00 000000 $UUOER: JFCL ;INITED AS (JRST $UOERX)
447 030071 255 00 0 00 000000 $ITRHL: JFCL ;ADDITIONAL INTERRUPT LINKAGE
448 030072 255 00 0 00 000000 $ITRX1: JFCL ; "
449 030073 255 00 0 00 000000 $USRHL: JFCL ; "
450 030074 255 00 0 00 000000 $RSRTX: JFCL ;ADDITIONAL POWER FAIL LINKAGE
451 030075 255 00 0 00 000000 $RSRTY: JFCL ; "
452 030076 255 00 0 00 000000 RESRT1: JFCL ; INITED AS (JRST RESRTX)
453 030077 255 00 0 00 000000 RESRT2: JFCL ; "
454 030100 255 00 0 00 000000 $PARER: JFCL ;ADDITIONAL PARITY ERROR LINKAGE
455 030101 255 00 0 00 000000 ERMORE: JFCL ;ADDITIONAL ERROR HANDLER LINKAGE
456 030102 254 04 0 00 030102 HALT . ;IMPROPER TRANSFER HALT
457
458 030103 000000 000000 $PSHER: 0 ;INITED AS (JRST PSHERR)
459 030104 000000 000000 ITRCH1: 0 ;PC & FLAGS OF CURRENT INTERRUPT
460 030105 000000 000000 0 ;INITED AS (JRST $ITRC1)
461
462 S^;*********************************************************************^
463 ;*PROCESSOR CONTROL STORAGE
464 S^;*********************************************************************^
465
466 030106 000000 000000 $ACC0: 0 ;INTERRUPT SAVED AC0
467 030107 000000 000000 $SVPI: 0 ;INTERRUPT SAVED PI
468 030110 000000 000000 $SVAPR: 0 ;INTERRUPT SAVED APR
469 030111 000000 000000 $SVPAG: 0 ;INTERRUPT SAVED PAG (DATAI)
470 030112 000000 000000 $SPAG1: 0 ;INTERRUPT SAVED PAG (CONI)
471
472 030113 000000 000000 $SVUUO: 0 ;CURRENT USERS UUO
473 030114 000000 000000 $SVUPC: 0 ;PC OF CURRENT USERS UUO
474
475 030115 000000 000000 REPTU: 0 ;REPEAT UUO ITERATIONS
476 030116 000000 000000 SCOPE: 0 ;ERROR HANDLER SCOPE LOOP FLAG
477 030117 000000 000000 %CORFLG:0 ; " CORRECT FLAG
478 030120 000000 000000 %COREC: 0 ; " CORRECT DATA
479 030121 000000 000000 %ACTFL: 0 ; " ACTUAL FLAG
480 030122 000000 000000 %ACTUL: 0 ; " ACTUAL DATA
481 030123 000000 000000 %DISCR: 0 ; " DISCREPENCY DATA
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 4
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0019
482 S^;*********************************************************************^
483 ;*UUO DISPATCH TABLE
484 S^;*********************************************************************^
485 XLIST
486 LIST
487 030124 030070 030070 UUODIS: LUUO1,,$UUOER
488 030125 030070 030070 LUUO3,,LUUO2
489 030126 030070 030070 LUUO5,,LUUO4
490 030127 030070 030070 LUUO7,,LUUO6
491 030130 030070 030070 LUUO11,,LUUO10
492 030131 030070 030070 LUUO13,,LUUO12
493 030132 030070 030070 LUUO15,,LUUO14
494 030133 030070 030070 LUUO17,,LUUO16
495 030134 030070 030070 LUUO21,,LUUO20
496 030135 030070 030070 LUUO23,,LUUO22
497 030136 030070 030070 LUUO25,,LUUO24
498 030137 030070 030070 LUUO27,,LUUO26
499 030140 030070 030070 LUUO31,,LUUO30
500 030141 030070 030070 LUUO33,,LUUO32
501
502 S^;*********************************************************************^
503 ;*MEMORY MANAGMENT STORAGE
504 S^;*********************************************************************^
505
506 030142 000000 000000 DF22F: 0 ;DF10 CONTROL FLAG, 0 = 18, -1 = 22 BIT
507 030143 000000 000000 MAPNEW: 0 ;MEMORY MAPPING CONTROL FLAG, -1 = 4096K MAPPING
508 030144 000000 000000 MEMTOT: 0 ;TOTAL MEMORY SIZE IN K (1024.)
509 030145 000000 000000 MEMLOW: 0 ;LOWEST USABLE MEMORY
510 030146 MEMSIZ: BLOCK ^D41 ;MEMORY SEGMENT POINTER TABLE
511
512 S^;*********************************************************************^
513 ;*PRINT CONTROL STORAGE
514 S^;*********************************************************************^
515
516 030217 000000 000000 PNTFLG: 0 ;PRINT FLAG, -1 WHILE IN PRINT ROUTINE
517 030220 000000 000000 PNTENB: 0 ;PRINT ENABLE
518 030221 000000 000000 PDISF: 0 ;PRINT DISABLED FLAG
519 030222 000000 000000 PNTINH: 0 ;INHIBIT PRINT INPUT CHECKS
520 030223 000000 000000 PNTSPC: 0 ;PRINT SPACE CONTROL
521 030224 000000 000000 OPTIME: 0 ;TYPE-IN WAIT TIME
522 030225 000000 000000 $TWCNT: 0 ;TIME WAITED
523 030226 000000 000000 $DVOFF: 0 ;LOGICAL DEVICE INITED FLAG
524 030227 000000 000000 TTYFIL: 0 ;TTY EXEC FILLERS FLAG
525 030230 000000 000000 TTYSPD: 0 ;TTY EXEC BAUD RATE
526 030231 000000 000000 $TTCHR: 0 ;ACTUAL TYPED IN CHAR
527 030232 000000 000000 $CHRIN: 0 ;UPPER CASED & PARITY STRIPPED CHAR
528 030233 000000 000000 $TYPNB: 0 ;TYPED IN NUMBER
529 030234 000000 000000 $CRLF: 0 ;FREE CR/LF FLAG
530 030235 000000 000000 $TABF: 0 ;TAB CONVERSION FLAG
531 030236 000000 000000 $FFF: 0 ;FORM FEED CONVERSION FLAG
532 030237 000000 000000 $VTF: 0 ;VERTICAL TAB CONVERSION FLAG
533 030240 000000 000000 USRLFF: 0 ;USER LF FILLERS
534 030241 000000 000000 USRCRF: 0 ;USER CR FILLERS
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 5
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0020
535 S^;*********************************************************************^
536 ;*THE FOLLOWING MISCELLANEOUS PRINT CHARACTERS ARE INCLUDED
537 ;*TO FACILITATE PRINTING AND ARE CALLED AS FOLLOWS:
538 ;* MOVEI NAME
539 ;* PNTA ;OR PNTAF
540 S^;*********************************************************************^
541
542 030242 CRLF: ASCII/
543 030242 015 012 000 000 000 /
544 030243 CRLF2: ASCII/
545
546 030243 015 012 015 012 000 /
547 030244 054 000 000 000 000 COMMA: ASCII/,/
548 030245 056 000 000 000 000 PERIOD: ASCII/./
549 030246 040 000 000 000 000 SPACE: ASCII/ /
550 030247 011 000 000 000 000 TAB: ASCII/ /
551 030250 MINUS:
552 030250 055 000 000 000 000 HYPEN: ASCII/-/
553 030251 053 000 000 000 000 PLUS: ASCII/+/
554 030252 052 000 000 000 000 AST: ASCII/*/
555 030253 100 000 000 000 000 ATSIN: ASCII/@/
556 030254 050 000 000 000 000 LFP: ASCII/(/
557 030255 051 000 000 000 000 RTP: ASCII/)/
558 030256 007 0000000000 BELL: BYTE (7) 007
559 030257 077 000 000 000 000 QUEST: ASCII/?/
560 030260 057 000 000 000 000 SLASH: ASCII!/!
561 030261 044 000 000 000 000 DOLLAR: ASCII/$/
562 030262 000000 000012 RADIX: ^D10 ;DECIMAL PRINT RADIX
563 030263 000000 000040 RADLSP: 40 ;DECIMAL PRINT LEADING CHAR
564 030264 000000 000012 RADLSC: ^D10 ;DECIMAL PRINT LEADING CHAR COUNT
565
566 S^;*********************************************************************^
567 ;*USER MODE OUTPUT FILE INFORMATION
568 S^;*********************************************************************^
569
570 030265 $OBUF: BLOCK 3 ;LOGICAL FILE OUTPUT BUFFER HEADER
571 030270 60 62 51 56 64 00 $OUTNM: SIXBIT /PRINT/ ;FILE NAME
572 030271 60 56 64 00 00 00 $OUTEX: SIXBIT /PNT/ ;FILE NAME EXTENSION
573 030272 BLOCK 2
574
575 S^;*********************************************************************^
576 ;*DISK UPDATE MODE FILE INFORMATION
577 S^;*********************************************************************^
578
579 030274 $IBUF: BLOCK 3
580 030277 60 62 51 56 64 00 $INNM: SIXBIT /PRINT/
581 030300 60 56 64 00 00 00 $INEXT: SIXBIT /PNT/
582 030301 BLOCK 2
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 6
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0021
583 S^;*********************************************************************^
584 ;*PUSHDOWN LIST CONTROL INFORMATION
585 S^;*********************************************************************^
586
587 030303 777577 030303 PLIST: PLIST-PLISTE,,PLIST
588 030304 PLISTS: BLOCK 200
589 030504 000000 000000 PLISTE: 0 ;END OF PUSHDOWN LIST
590
591 S^;*********************************************************************^
592 ;*POWER LINE CLOCK FREQUENCY FLAG
593 S^;*********************************************************************^
594
595 030505 000000 000000 CYCL60: 0 ;0 = 60, -1 = 50 CYCLE
596
597 S^;*********************************************************************^
598 ;*KL10 CACHE CONTROL FLAGS
599 S^;*********************************************************************^
600
601 030506 000000 000000 CSHFLG: 0 ;ALLOW CACHE IF 0
602 030507 000000 000000 CSHMEM: 0 ;CACHE MEMORY SEGMENTS IF 0
603
604 S^;*********************************************************************^
605 ;*NUMBER INPUT DIGIT FLAG
606 S^;*********************************************************************^
607
608 030510 000000 000000 TTNBRF: 0 ;-1 IF ANY DIGIT TYPED
609
610 S^;*********************************************************************^
611 ;*KL10 & KI10 "INHPAG" SWITCH PAGING PREVENTION
612 S^;*********************************************************************^
613
614 030511 000000 000000 PVPAGI: 0 ;IF NON-ZERO, OVERRIDE "INHPAG" SWITCH ACTION
615
616 S^;*********************************************************************^
617 ;*ERROR REPORTING ROUTINE ADDITIONAL USERS CONTROL INSTRUCTIONS
618 S^;*********************************************************************^
619
620 030512 000000 000000 %ERHI1: 0 ;IF NON-ZERO, XCT'D AT START OF %ERUUO
621 030513 000000 000000 %ERHI2: 0 ;IF NON-ZERO, XCT'D AT END OF %ERUUO
622 030514 000000 000000 %ERHI3: 0 ;IF NON-ZERO, XCT'D AFTER "PC" OF %ERUUO
623
624 S^;*********************************************************************^
625 ;*SPECIAL USERS UUO INTERCEPT INSTRUCTION
626 S^;*********************************************************************^
627
628 030515 000000 000000 $$UUO: 0 ;IF NON-ZERO, XCT'D AT START OF $UORTN
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 7
FIXED KLM 18-JAN-77 11:39 *FIXED* FIXED CONTROL AND DISPATCH STORAGE, JAN 18,1977 SEQ 0022
629 S^;*********************************************************************^
630 ;*KL10 PROCESSOR TYPE FLAG, 0=P0, 1=BBD NEW, 2=BBD OLD
631 S^;*********************************************************************^
632
633 030516 000000 000000 KLTYP: 0
634
635 S^;*********************************************************************^
636 ;*SPECIAL USERS MUUO INTERCEPT INSTRUCTION
637 S^;*********************************************************************^
638
639 030517 000000 000000 $$MUUO: 0 ;IF NON-ZERO, XCT'D AT START OF MUUOER
640
641 S^;*********************************************************************^
642 ;*SPECIAL USERS USER MODE OUTPUT ERROR INTERCEPT INSTUCTION
643 S^;*********************************************************************^
644
645 030520 000000 000000 $$OUTER:0 ;IF NON-ZERO, XCT'D AT END OF USER MODE ERROR
646
647 S^;*********************************************************************^
648 ;*"SWITCH" CALL USAGE CONTROL
649 S^;*********************************************************************^
650
651 030521 000000 000000 $$TOGGLE:0 ;IF NON-ZERO, USE C(CONSW) FOR SWITCHES
652
653 S^;*********************************************************************^
654 ;*SPECIAL USERS ALTMODE SWITCH CALL INTERCEPT INSTRUCTIONS
655 S^;*********************************************************************^
656
657 030522 000000 000000 $$TAX1: 0 ;IF NON-ZERO, XCT'D AT START OF ALTMODE SWITCH CALL
658 030523 000000 000000 $$TAX2: 0 ;IF NON-ZERO, XCT'D AT END OF ALTMODE SWITCH CALL
659
660 S^;*********************************************************************^
661 ;*SPECIAL FUTURE EXPANSION ROOM
662 ;*IF ANY FIXED AREA TAGS ARE ADDED, REDUCE THE SIZE OF
663 ;*THIS BLOCK STATEMENT ACCORDINGLY. THIS MUST BE DONE
664 ;*SO THAT PREVIOUS FIXED ASSIGNMENTS DO NOT CHANGE.
665 S^;*********************************************************************^
666
667 030524 BLOCK 53 ;HOPEFULLY THIS IS ENOUGH FOREVER
668
669 S^;*********************************************************************^
670 ;*END OF FIXED STORAGE
671 S^;*********************************************************************^
672
673 030577 $ENDFX=<PLISTE+100>&<777700>-1
674 030577 LOC $ENDFX
675 030577 000000 000000 ENDFIX: 0 ;END OF FIXED STORAGE
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 1
SPCCPU KLM 26-FEB-76 05:50 *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76 SEQ 0023
676 SUBTTL *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76
677
678 ;NEW DEFINITIONS USED BY THE KL10 SUBROUTINE PACKAGE
679
680 000000 AC0= 0
681 030000 DIAGNOS=30000 ;PDP-10 DIAGNOSTIC START ADDRESS
682 010000 DDT= 10000 ;PDP-10 DDT START ADDRESS
683 020000 DIAMON= 20000 ;PDP-10 DIAMON LOADER START ADDRESS
684 020000 DONG11= 1B22 ;11 DOORBELL (FROM THE 10)
685
686 ;DTE20 DEVICE CODES
687
688 000200 DTE== 200 ;DTE0
689 000204 DTE0== 204
690 000204 DTE1== 204
691 000210 DTE2== 210
692 000214 DTE3== 214
693
694 ;KL10 EPT COMMUNICATION AREA
695
696 000440 $STD= 440 ;PDP-10 DIAGNOSTIC START ADDRESS
697 000441 $DDT= 441 ;PDP-10 DDT START ADDRESS
698 000442 $STL= 442 ;PDP-10 LOADER START ADDRESS
699 000443 $STM= 443 ;PDP-10 MONITOR START ADDRESS
700
701 000444 $DTFLG= 444 ;DTE20 OPERATION COMPLETE FLAG
702 000445 $DTCLK= 445 ;DTE20 CLOCK INTERRUPT FLAG
703 000446 $DTCI= 446 ;DTE20 CLOCK INTERRUPT INSTRUCTION
704 000447 $DTT11= 447 ;DTE20 10 TO 11 ARGUMENT
705 000450 $DTF11= 450 ;DTE20 11 TO 10 ARGUMENT
706 000451 $DTCMD= 451 ;DTE20 TO 11 COMMAND WORD
707 000452 $DTSEQ= 452 ;DTE20 OPERATION SEQUENCE NUMBER
708 000453 $DTOPR= 453 ;DTE20 OPERATIONAL DTE #
709 000454 $DTCHR= 454 ;DTE20 LAST TYPED CHARACTER
710 000455 $DTMTD= 455 ;DTE20 MONITOR TTY OUTPUT COMPLETE FLAG
711 000456 $DTMTI= 456 ;DTE20 MONITOR TTY INPUT FLAG
712
713 000457 $DTSWR= 457 ;DTE20 CONSOLE SWITCH REGISTER
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 2
SPCCPU KLM 26-FEB-76 05:50 *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76 SEQ 0024
714 ;SPECIAL "FIXED" REASSIGNMENTS
715
716 030600 $$LOC=. ;SAVE CURRENT LOCATION
717
718 030000 LOC 30000
719 030000 254 00 0 00 030600 $$BEGIN:JRST $$START ;SETUP SPECIAL START
720 030001 254 00 0 00 030600 JRST $$START ;"DIAMON" CHAIN START ADDRESS
721
722 000440 LOC 440
723 000440 254 00 0 00 030000 $STD: JRST BEGIN ;SETUP FOR "STD"
724 000443 LOC 443
725 000443 254 00 0 00 030636 $STM: JRST $SPEC ;SIMPLE RUN CONTROL
726
727 030057 LOC 30057
728 030057 254 00 0 00 030641 $BEGEND:JRST $SPBEND ;SETUP SPECIAL "BEGEND"
729
730 ;SPECIAL MUUO, TRAP & PAGE FAIL SETUP
731
732 000420 LOC 420
733 000420 254 04 0 00 000420 $$420: HALT . ;KI10 PAGE FAIL
734 000421 255 00 0 00 000000 $$421: JFCL ;OVERFLOW
735 000422 254 04 0 00 000422 $$422: HALT . ;PUSHDOWN OVERFLOW
736 000423 254 04 0 00 000423 $$423: HALT . ;TRAP 3
737 000424 000000 000000 $$424: 0 ;MMUO
738 000425 000000 000000 $$425: 0 ;MMUO PC
739 000426 000000 000000 $$426: 0 ;KI10-PAGE FAIL, KL10-PROCESS CONTEXT
740 000427 254 04 0 00 000427 $$427: HALT .
741 000430 000000 000427 $$430: 427 ;MMUO NEW PC'S
742 000431 000000 000427 $$431: 427
743 000432 000000 000427 $$432: 427
744 000433 000000 000427 $$433: 427
745 000434 000000 000427 $$434: 427
746 000435 000000 000427 $$435: 427
747 000436 000000 000427 $$436: 427
748 000437 000000 000427 $$437: 427
749
750 000500 LOC 500
751 000500 000000 000000 $$500: 0 ;KL10 PAGE FAIL WORD
752 000501 000000 000000 $$501: 0 ;KL10 PAGE FAIL PC
753 000502 000000 000503 $$502: 503 ;KL10 PAGE FAIL NEW PC
754 000503 254 04 0 00 000503 $$503: HALT .
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 3
SPCCPU KLM 26-FEB-76 05:50 *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76 SEQ 0025
755 030600 LOC $$LOC ;RESET CURRENT LOCATION
756
757 ;SPECIAL STARTUP SEQUENCE
758
759 030600 402 00 0 00 030037 $$START:SETZM USER
760 030601 265 00 0 00 030602 JSP 0,.+1 ;IN USER MODE ?
761 030602 603 00 0 00 010000 TLNE 0,USERF
762 030603 476 00 0 00 030037 SETOM USER ;YES, SET CONTROL WORD
763 030604 336 00 0 00 030042 SKIPN MONFLG ;SPECIAL USER MODE ?
764 030605 402 00 0 00 030037 SETZM USER ;YES, RUN AS EXEC
765 030606 332 00 0 00 030037 SKIPE USER
766 030607 254 00 0 00 030712 JRST START ;USER MODE, DON'T NEED CPU TYPE
767
768 030610 336 00 0 00 030044 $STKIL: SKIPN MONTEN ;LOADED BY "DIAMON" ?
769 030611 476 00 0 00 030024 SETOM ITRCNT ;NO, RUN FOREVER
770 030612 402 00 0 00 030516 SETZM KLTYP
771 030613 402 00 0 00 030041 SETZM KLFLG ;ASSUME KI10
772 030614 200 01 0 00 035060 MOVE 1,[1,,1]
773 030615 251 01 0 00 000001 BLT 1,1 ;HOPE THIS WORKS
774 030616 316 01 0 00 035060 CAMN 1,[1,,1] ;IF AC NE 1,,1 AFTER BLT, KL10
775 030617 254 00 0 00 030712 JRST START ;KI10, NO ADDITIONAL SETUP
776
777 030620 7 000 20 0 00 010040 $STKL: CONO APR,10040 ;SET BBD NOT BIT
778 030621 7 000 24 0 00 000000 CONI APR,0
779 030622 7 000 20 0 00 020040 CONO APR,20040 ;CLEAR BBD NOT BIT
780 030623 606 00 0 00 000040 TRNN 0,40 ;IF SET, KL10
781 030624 350 00 0 00 030516 AOS KLTYP ;IF NOT, BBD
782 030625 402 00 0 00 000444 SETZM $DTFLG
783 030626 402 00 0 00 000445 SETZM $DTCLK
784 030627 200 00 0 00 000453 MOVE $DTOPR ;GET DTE #
785 030630 436 00 0 00 030670 ORM $$DTE0 ;INSERT IN DTE I/O INSTS
786 030631 436 00 0 00 030672 ORM $$DTE1
787 030632 436 00 0 00 030704 ORM $$DTE2
788 030633 436 00 0 00 030706 ORM $$DTE3
789 030634 476 00 0 00 030041 SETOM KLFLG ;SET KL10 CONTROL FLAG
790 030635 254 00 0 00 030712 JRST START
791
792 030636 200 00 0 00 035061 $SPEC: MOVE [JRST STARTA] ;SIMPLE RUN CONTROL
793 030637 202 00 0 00 030643 MOVEM $SPB1
794 030640 254 00 0 00 030712 JRST START
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 4
SPCCPU KLM 26-FEB-76 05:50 *SPCCPU* SPECIAL BASIC CPU PROCESSOR CONTROL, 26-FEB-76 SEQ 0026
795 ;SPECIAL "BEGEND" ROUTINE
796
797 030641 350 00 0 00 030047 $SPBEND:AOS PASCNT ;INCREMENT PASS COUNT
798 030642 370 00 0 00 030024 SOS ITRCNT ;DECREMENT ITERATION COUNT
799 030643 336 00 0 00 030037 $SPB1: SKIPN USER
800 030644 254 00 0 00 030652 JRST $SPBEX ;EXEC MODE
801
802 030645 332 00 0 00 030024 $SPBUS: SKIPE ITRCNT ;USER MODE, COMPLETED ?
803 030646 254 00 0 00 030741 JRST STARTA ;NO, KEEP RUNNING
804 030647 336 00 0 00 030044 SKIPN MONTEN ;DONE, LOADED BY "DIAMON" ?
805 030650 047 00 0 00 000012 EXIT ;NO, RETURN TO MONITOR
806 030651 254 00 1 00 030012 JRST @RETURN ;YES, RETURN TO "DIAMON"
807
808 030652 332 00 0 00 030041 $SPBEX: SKIPE KLFLG
809 030653 254 00 0 00 030660 JRST $SPBKL ;KL10 & EXEC
810 030654 7 004 14 0 00 030024 DATAO PI,ITRCNT ;KI10 & EXEC, DISPLAY ITER COUNT
811 030655 332 00 0 00 030024 SKIPE ITRCNT
812 030656 254 00 0 00 030741 JRST STARTA ;NOT COMPLETED YET
813 030657 254 00 1 00 030012 JRST @RETURN ;DONE
814
815 030660 336 00 0 00 030024 $SPBKL: SKIPN ITRCNT
816 030661 254 00 0 00 030676 JRST $SPKLD ;KL10, EXEC & COMPLETED
817
818 030662 335 00 0 00 030043 SKIPGE MONCTL
819 030663 254 00 0 00 030741 JRST STARTA ;"DIAMON" CONTROL
820 030664 201 00 0 00 000404 MOVEI 0,404 ;NOTIFY PDP-11 OF END OF PASS
821 030665 202 00 0 00 000451 MOVEM 0,$DTCMD
822 030666 402 00 0 00 000444 SETZM $DTFLG
823 030667 336 00 0 00 030516 SKIPN KLTYP
824 030670 7 200 20 0 00 020000 $$DTE0: CONO DTE,DONG11
825 030671 332 00 0 00 030516 SKIPE KLTYP
826 030672 7 200 20 0 00 010000 $$DTE1: CONO DTE,10000
827 030673 336 00 0 00 000444 SKIPN $DTFLG ;WAIT TILL 11 RESPONDS
828 030674 254 00 0 00 030673 JRST .-1
829 030675 254 00 0 00 030741 JRST STARTA ;KEEP RUNNING
830
831 ;SPECIAL KL10 COMPLETED ROUTINE
832
833 030676 332 00 0 00 030044 $SPKLD: SKIPE MONTEN
834 030677 254 00 1 00 030012 JRST @RETURN ;LOADED BY "DIAMON"
835
836 030700 201 00 0 00 000403 MOVEI 0,403 ;NOTIFY PDP-11 OF COMPLETION
837 030701 202 00 0 00 000451 MOVEM 0,$DTCMD
838 030702 402 00 0 00 000444 SETZM $DTFLG
839 030703 336 00 0 00 030516 SKIPN KLTYP
840 030704 7 200 20 0 00 020000 $$DTE2: CONO DTE,DONG11
841 030705 332 00 0 00 030516 SKIPE KLTYP
842 030706 7 200 20 0 00 010000 $$DTE3: CONO DTE,10000
843 030707 336 00 0 00 000444 SKIPN $DTFLG ;SHOULD NEVER HAPPEN
844 030710 254 00 0 00 030707 JRST .-1 ;11 NEVER RETURNS ON END OF PROGRAM
845 030711 254 04 0 00 030000 HALT BEGIN ;IF IT DOES, HALT.
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 1
DAKAAM MAC 19-JAN-77 13:42 DIAGNOSTIC SECTION SEQ 0027
846 SUBTTL DIAGNOSTIC SECTION
847
848 030712 402 00 0 00 030037 START: SETZM USER# ;CLEAR USER CONTROL WORD
849 030713 265 00 0 00 030714 JSP 0,.+1 ;GET FLAGS
850 030714 603 00 0 00 010000 TLNE USERF ;IN USER MODE?
851 030715 476 00 0 00 030037 SETOM USER ;YES, SET USER CONTROL WORD
852 030716 336 00 0 00 030042 SKIPN MONFLG ;SPECIAL USER MODE?
853 030717 402 00 0 00 030037 SETZM USER ;YES, CLEAR USER CONTROL WORD
854 030720 336 00 0 00 030037 SKIPN USER
855 030721 254 00 0 00 030741 JRST STARTA
856 030722 331 00 0 00 030043 SKIPL MONCTL
857 030723 051 03 0 00 030725 TTCALL 3,PGMNAM ;MENTION OUR NAME
858 030724 254 00 0 00 030741 JRST STARTA
859
860 030725 PGMNAM: ASCIZ/
861 030725 015 012 120 104 120 PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) [DAKAA]
862 030726 055 061 060 040 113
863 030727 101 061 060 040 102
864 030730 101 123 111 103 040
865 030731 111 116 123 124 122
866 030732 125 103 124 111 117
867 030733 116 040 104 111 101
868 030734 107 116 117 123 124
869 030735 111 103 040 050 061
870 030736 051 040 133 104 101
871 030737 113 101 101 135 015
872 030740 012 000 000 000 000 /
873
874 ;BASIC INSTRUCTION TEST (3)
875 ;THE TEST IS DESIGNED FOR INITIAL DEBUGGING OF
876 ;PROCESSOR HARDWARE AND TO DETECT (SOLID) FAILURES
877 ;IN THE FIELD.
878
879
880 030741 254 00 0 00 030742 STARTA: JRST .+1
DAKAA PDP-10 KA10 BASIC INSTRUCTION DIAGNOSTIC (1) 0,2 MACRO %52(537) 13:54 19-JAN-77 PAGE 2
DAKAAM MAC 19-JAN-77 13:42 TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS SEQ 0028
881 SUBTTL TEST OF JUMP, JUMPA AND SKIPX INSTRUCTIONS
882
883 ;NOTE: AN "*" IN THE COMMENT FIELD OF AN INSTRUCTION INDICATES THAT IT IS THE TESTED
884 ;INSTRUCTION.
885 ;**********
886
887 ;THIS TEST VERIFIES THAT SKIPA ALWAYS SKIPS THE NEXT INSTRUCTION
888
889 030742 A00=.
890 030742 334 00 0 00 000000 A12500: SKIPA ;*SKIPA SHOULD ALWAYS SKIP THE NEXT INSTRUCTION
891 030743 254 04 0 00 000000 HALT ;IF PROGRAM HALTS, SKIPA DID NOT SKIP
892
893 ;IF PROGRAM HANGS UP ON SKIPA INSTRUCTION, CHECK AB PC EN [ABC], AB PC F/F [ABC],
894 ;AB PC B [ABC OR AB], AB PC (FETCH) EN [ABC], IR SKIPS [IR3], IR SKIPX [IR1],
895 ;IR 3XX [IR1], IR BITS 00 - 08 [IR1], F CYC ACT EN C [FI], FT6 F/F [F2],
896 ;PC CLOCK EN [PCC], ET2 J F/F [E], PC CLK (ET2) EN [PCC], ADZ COND P [ADZ] AND
897 ;ADZ COND R [ADZ], PC CLOCK A [PCC], PC CLOCK B [PCC]
898
899 ;IF PROGRAM HALTED ON HALT INSTRUCTION, CHECK ST1 COND [ST2]
900
901 ;**********
902
903 ;THIS TEST VERIFIES THAT JUMP NEVER JUMPS
904
905 030744 320 00 0 00 030745 A15000: JUMP .+1 ;*JUMP SHOULD NEVER JUMP
906 030745 334 00 0 00 000000 SKIPA ;SKIP HALT INSTRUCTION IF JUMP IS SUCCESSFUL
907 030746 254 04 0 00 000000 HALT ;HALT IF JUMP FAILS
908
909 ;IF PROGRAM HANGS UP ON JUMP .+1 INSTRUCTION, THE JUMP INSTRUCTION
910 ;MAY HAVE FAILED. CHECK ST1 COND [ST2], ST INST FET ST1 EN [ST2], ET2 D F/F [E],
911 ;IR JUMPS [IR1], IR JUMPX [IR1]
912
913 ;**********
914 ;THIS TEST VERIFIES THAT JUMP NEVER JUMPS
915
916 030747 320 00 0 00 030751 A15100: JUMP .+2 ;*JUMP SHOULD NEVER JUMP
917 030750 334 00 0 00 000000 SKIPA ;SKIP HALT INSTRUCTION IF JUMP IS SUCCESSFUL
918 030751 254 04 0 00 000000 HALT ;HALT IF JUMP FAILS
919
920 ;AB PC EN [ABC]
921
922 ;**********
923
924 ;THIS TEST VERIFIES THAT JUMPA .+1 ALWAYS JUMPS TO THE NEXT INSTRUCTION
925
926 030752 324 00 0 00 030753 A12700: JUMPA .+1 ;*JUMPA .+1 SHOULD NEVER JUMP
927 030753 334 00 0 00 000000 SKIPA ;SKIP HALT INSTRUCTION IF JUMPA IS SUCCESSFUL
928 030754 254 04 0 00 000000 HALT ;HALT IF JUMPA .+1 FAILED
929
930 ;**********
931
932 ;THIS TEST VERIFIES THAT JUMPA JUMPS TO THE LOCATION SPECIFIED BY E WHEN E=.+2
933
934 030755 324 00 0 00 030757 A12600: JUMPA .+2 ;*JUMPA .+2 SHOULD ALWAYS SKIP THE NEXT INSTRUCTION