File: boot.t2

For general comments see here
LineAddressObject Code LabelF1N1BF2N2CommentsCheck
1 0  ;
2 0  ; initial bootstrap (loaded by T1) for Elliott Algol 60 Compiler
3 0  ;
4 0  =8166 
5 8166  Boot::; 
6 8166   clo     ; @8166
6+18166 1177746 jo .1    
6+28166+ .1:; 
7 8166+0140000 cla 0   ;
8 8167  .L1:; 
9 8167 1320005 sll 5    
10 8167+1620000 inp 0   ;get load address
11 8168   jno     ;
11+18168 1077751 jo .1    
11+28168+1017747 jmp Boot.L1    
11+38169  .1:; 
12 8169 0417776 sto W8190   ;store sumck
13 8169+0357777 stc W8191   ;store address
14 8170  .L2:; 
15 8170 1620000 inp 0   ; @8170
16 8170+1157764 jz .L3   ;test for end of segment
17 8171 0077775 and .L8   ;
18 8171+1530005 flt 5   ;read next word...
19 8172 1620000 inp 0   ; @8172
20 8172+1530005 flt 5   ;
21 8173 1620000 inp 0   ;
22 8173+1530005 flt 5   ;
23 8174 1620000 inp 0   ; @8174
24 8174+1530005 flt 5   ;
25 8175 1620000 inp 0   ;
26 8175+1530005 flt 5   ;
27 8176 1620000W8176:inp 0   ; @8176
28 8176+1530005 flt 5   ;
29 8177 1620000 inp 0   ;
30 8177+1530005 flt 5   ;
31 8178 1620000 inp 0   ; @8178
32 8178+0517776 ads W8190   ;add to sumck
33 8179 2277776337777 inc W8191/stc -1;store in next location
34 8180 1017752 jmp .L2   ;back for next
35 8180+ ;
36 8180+ .L3:; 
37 8180+  clo     ;clr oflo @8180+
37+18180+1077765 jo .1    
37+28181  .1:; 
38 8181  .L4:; 
39 8181 1320005 sll 5   ;
40 8181+1620000 inp 0   ;get sumck value
41 8182  L8182:; 
42 8182   jno     ; @8182
42+18182 1077767 jo .1    
42+28182+1017765 jmp Boot.L4    
42+38183  .1:; 
43 8183  L8183:; ??? 
44 8183 0137776 sub W8190   ;
45 8183+1157771 jz .L6   ;compare with sum
46 8184  .L5:; 
47 8184 1700012 otp 10   ; @8184
48 8184+1700025 otp 21   ;error, punch warning
49 8185 1017770 jmp .L5   ;loop until reset
50 8185+ ;
51 8185+ L8185P:; 
52 8185+ .L6:; 
53 8185+  clo     ;clr oflo
53+18185+1077772 jo .1    
53+28186  .1:; 
54 8186  .L7:; 
55 8186 1320005 sll 5   ; @8186
56 8186+1620000 inp 0   ;get (re-) entry address
57 8187   jno     ;
57+18187 1077774 jo .1    
57+28187+1017772 jmp Boot.L7    
57+38188  .1:; 
58 8188  ;
59 8188  W8188:; 
60 8188 2077772000000 sto W8190/00 0;enter loader or compiler @8188
61 8189  ;
62 8189  .L8:; 
63 8189 1017775 jmp .L8   ;loop stop
64 8189+0000017 o00 +15   ;
65 8190  ;
66 8190 0000001007676W8190:+00000001007676;sum check word @8190
67 8191 0000000017736W8191:+00000000017736;load address word @8191
68 8192  ;
69 8192  ; on Tape 1, the above is followed by a T1 trigger which
70 8192  ; transfers control to the start of this section:
71 8192  ; 4 00 0 : 22 8162 ; T1 load address
72 8192  ;
73 8192  ; All but the last block of Tape 1, have triggers to re-enter
74 8192  ; this section:
75 8192  ; 00 0 : 40 8166
76 8192  ;
77 8192  ; The last block of Tape 1, however, triggers into the
78 8192  ; compiler proper, where there is a wait routine, followed
79 8192  ; by a branch back into this loader to load Tape 2
80 8192  ;
81 8192  ; 00 0 : 40 4030
82 8192  ;
83 8192  ; end of initial bootstrap, start of real Tape1
84 8192  ;