forked from JamesHagerman/nankervis-pdp11-js
-
Notifications
You must be signed in to change notification settings - Fork 2
/
bootcode.js
executable file
·252 lines (252 loc) · 15.8 KB
/
bootcode.js
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
// Javascript PDP 11/70 Emulator v3.2
// written by Paul Nankervis
// Please send suggestions, fixes and feedback to [email protected]
//
// This code may be used freely provided the original author name is maintained in any modified source code
//
//
//
var BOOTBASE=0120000;
var bootcode=[
0000005,0005037,0177776,0010706,0062706,0177770,0062706,0020000,
0010700,0062700,0000722,0004767,0000156,0162706,0000256,0010667,
0000242,0004767,0000010,0005000,0000001,0005200,0000775,0010700,
0062700,0000736,0004767,0000120,0016767,0000210,0000210,0010700,
0062700,0000210,0010037,0000060,0012737,0000200,0000062,0112737,
0000100,0177560,0010700,0062700,0000030,0010037,0000100,0012737,
0000340,0000102,0112737,0000100,0177546,0000207,0000000,0005367,
0177772,0016737,0177766,0177570,0000006,0105737,0177564,0100375,
0110037,0177566,0000207,0000000,0132737,0000100,0177564,0001374,
0010067,0177762,0010700,0062700,0000026,0010037,0000064,0012737,
0000200,0000066,0012737,0000100,0177564,0000207,0105777,0177726,
0001406,0117737,0177720,0177566,0005267,0177712,0000006,0105037,
0177564,0000006,0000000,0000000,0010046,0010146,0113700,0177562,
0120027,0000040,0002432,0120027,0000177,0002034,0016701,0177746,
0166701,0177740,0020127,0000250,0003060,0004767,0177614,0120027,
0000141,0002405,0120027,0000172,0003002,0142700,0000040,0016701,
0177704,0110021,0010167,0177676,0000440,0120027,0000015,0001417,
0120027,0000010,0001032,0026767,0177654,0177650,0101426,0005367,
0177644,0010700,0062700,0000535,0004767,0177534,0000416,0016700,
0177624,0105010,0010700,0062700,0000032,0010037,0000240,0012737,
0000040,0000242,0012737,0001000,0177772,0012601,0012600,0000006,
0005037,0177772,0010046,0010146,0010246,0010346,0010446,0010546,
0010700,0062700,0000434,0004767,0177436,0016705,0177526,0112504,
0001453,0020427,0000040,0001773,0005003,0010700,0062700,0000411,
0112001,0001435,0120104,0001013,0010502,0111201,0001415,0005202,
0020127,0000040,0001411,0105710,0001402,0120120,0001766,0105720,
0001376,0062703,0000002,0000754,0132737,0000100,0177564,0001374,
0010700,0062700,0000050,0060003,0061303,0004713,0000405,0010700,
0062700,0000342,0004767,0177300,0004767,0177142,0012605,0012604,
0012603,0012602,0012601,0012600,0000006,0001520,0000456,0000502,
0000466,0002444,0060520,0066165,0047040,0067141,0062553,0073162,
0071551,0026440,0070040,0072541,0067154,0067141,0040153,0067550,
0066564,0064541,0027154,0067543,0006555,0006412,0000012,0067502,
0072157,0020076,0041400,0066557,0060555,0062156,0020163,0071141,
0020145,0047502,0052117,0020054,0042510,0050114,0020054,0044514,
0044107,0051524,0020054,0044103,0051501,0051105,0020054,0042117,
0006524,0041012,0067557,0020164,0062544,0064566,0062543,0020163,
0071141,0020145,0045522,0051040,0020114,0050122,0052040,0020115,
0071157,0050040,0006522,0062412,0027147,0041040,0067557,0037164,
0041040,0047517,0020124,0050122,0006461,0006412,0000012,0005015,
0004000,0004040,0041000,0047517,0000124,0042510,0050114,0046000,
0043511,0052110,0000123,0044103,0051501,0051105,0047400,0052104,
0000000,0060526,0064554,0020144,0067543,0066555,0067141,0071544,
0060440,0062562,0041040,0047517,0026124,0044040,0046105,0026120,
0046040,0043511,0052110,0026123,0041440,0040510,0042523,0026122,
0047440,0052104,0006412,0053000,0066141,0062151,0061040,0067557,
0020164,0062544,0064566,0062543,0020163,0071141,0020145,0045522,
0051040,0020114,0050122,0052040,0020115,0067141,0020144,0051120,
0062440,0020147,0065562,0005060,0000015,0010700,0062700,0177411,
0004767,0176564,0000207,0012700,0000001,0006100,0000005,0000775,
0005037,0177572,0010705,0062705,0000710,0012704,0000004,0012503,
0100007,0005001,0010302,0004767,0000152,0012763,0177600,0000076,
0077412,0012737,0000007,0172516,0012737,0000001,0177572,0012700,
0004000,0010037,0172244,0010037,0172264,0042737,0030000,0177776,
0052737,0010000,0177776,0012703,0040200,0010702,0062702,0000126,
0010700,0062700,0000630,0012246,0006623,0020200,0103774,0012746,
0040200,0006606,0052737,0030000,0177776,0012746,0040140,0006606,
0012737,0040200,0000240,0012737,0054040,0000242,0012737,0001000,
0177772,0000207,0012700,0000010,0010162,0000060,0010162,0000040,
0012762,0077406,0000020,0012722,0077406,0062701,0000200,0077014,
0000207,0005037,0177772,0042737,0000340,0177776,0012700,0000037,
0012701,0174000,0013703,0177776,0004767,0000432,0010205,0010102,
0162702,0000002,0010203,0042703,0177701,0012763,0000001,0040000,
0012763,0000113,0040002,0010203,0042703,0160077,0072327,0177772,
0016504,0000044,0160304,0072227,0177764,0042702,0177761,0010103,
0072327,0177764,0042703,0177761,0020302,0001403,0060503,0010463,
0000040,0060502,0010462,0000040,0010102,0162702,0000002,0042702,
0000001,0010703,0062703,0000012,0012704,0000003,0000112,0077402,
0032737,0000001,0177570,0001004,0006101,0006000,0005501,0000403,
0006100,0006001,0005500,0020027,0000037,0001274,0032737,0000002,
0177570,0001023,0013703,0177776,0004767,0000212,0016205,0000044,
0062703,0040000,0100002,0052703,0040000,0004767,0000170,0010562,
0000064,0010562,0000044,0010337,0177776,0032737,0000004,0177570,
0001401,0000640,0013703,0177776,0004767,0000132,0016205,0000044,
0000257,0006005,0042705,0000077,0001020,0032737,0000010,0177570,
0001004,0012703,0000020,0074337,0172516,0012705,0004000,0032737,
0000020,0172516,0001402,0012705,0100000,0010562,0000062,0010703,
0062703,0000072,0162703,0040000,0006203,0012704,0020000,0016424,
0020000,0077303,0010562,0000064,0010562,0000044,0000722,0172300,
0172200,0000001,0177600,0010302,0072227,0177763,0042702,0177771,
0060702,0062702,0177754,0011202,0000207,0000274,0000210,0000322,
0000410,0000556,0045522,0046122,0050122,0046524,0051120,0000000,
0000005,0000003,0000004,0000003,0000000,0112204,0120427,0000040,
0001774,0105704,0001451,0112200,0001447,0000300,0050004,0005003,
0112200,0001411,0162700,0000060,0120027,0000007,0101035,0072327,
0000003,0150003,0000765,0005002,0010700,0062700,0177672,0012001,
0001423,0020104,0001403,0062702,0000002,0000771,0010700,0062700,
0177662,0060200,0020310,0003010,0000005,0010700,0062700,0177616,
0060002,0061202,0004712,0000405,0010700,0062700,0176515,0004767,
0175366,0000207,0000303,0012700,0174400,0012760,0000013,0000004,
0052703,0000004,0010310,0105710,0100376,0005060,0000002,0005060,
0000004,0012760,0177000,0000006,0105003,0052703,0000014,0010310,
0105710,0100376,0005007,0012700,0177412,0072327,0000015,0010310,
0005040,0012740,0177000,0012740,0000005,0105710,0100376,0005007,
0012701,0176700,0012761,0000040,0000010,0010361,0000010,0012711,
0000021,0012761,0010000,0000032,0012761,0177000,0000002,0005061,
0000004,0005061,0000006,0005061,0000034,0012711,0000071,0105711,
0100376,0105011,0010300,0005007,0010300,0012701,0172526,0005011,
0012741,0177777,0010002,0000302,0062702,0060011,0010241,0105711,
0100376,0010002,0000302,0062702,0060003,0010211,0105711,0100376,
0005007,0060520,0062560,0020162,0060564,0062560,0061440,0062550,
0065543,0072563,0020155,0071145,0067562,0006562,0000012,0060520,
0062560,0020162,0060564,0062560,0064040,0071541,0067040,0020157,
0072163,0071141,0020164,0062141,0071144,0071545,0006563,0000012,
0005001,0004767,0000124,0120027,0000001,0001372,0004767,0000112,
0105700,0001366,0004767,0000062,0010203,0004767,0000054,0063702,
0177570,0162703,0000006,0010304,0003404,0004767,0000054,0110022,
0077304,0004767,0000044,0105701,0001034,0005704,0003341,0005702,
0001434,0032702,0000001,0001031,0000112,0004767,0000014,0010002,
0004767,0000006,0000300,0050002,0000207,0012700,0177550,0012710,
0000001,0105710,0100376,0116000,0000002,0042700,0177400,0060001,
0000207,0010700,0062700,0177516,0000403,0010700,0062700,0177542,
0004767,0174604,0000207,0005037,0127720,0012706,0127574,0010600,
0005001,0005046,0012720,0177777,0012721,0125712,0012721,0000340,
0020627,0127534,0101366,0012737,0001000,0127550,0114037,0127716,
0005037,0127714,0012737,0000007,0127556,0000137,0125064,0005000,
0005200,0162704,0003100,0103374,0062704,0003100,0012746,0055440,
0005300,0001410,0000316,0162700,0000033,0103404,0012716,0044044,
0005700,0001370,0062600,0004537,0126416,0005000,0006304,0006304,
0006304,0060400,0006304,0006304,0060004,0005202,0000207,0004537,
0126474,0012701,0000040,0020001,0001423,0103514,0020027,0000101,
0103013,0012701,0000011,0020027,0000044,0001412,0020027,0000056,
0103501,0020027,0000071,0000402,0020027,0000132,0101073,0160100,
0160100,0000734,0120021,0001407,0105711,0001374,0162700,0000070,
0062700,0000010,0103146,0000207,0013700,0127706,0105737,0127712,
0001424,0012700,0127574,0005303,0100003,0010305,0005702,0001406,
0005302,0003157,0006304,0010564,0127574,0000556,0010520,0020027,
0127614,0103774,0000551,0012700,0127706,0023727,0127704,0000002,
0001110,0010546,0012705,0124322,0006304,0062704,0127574,0011046,
0004537,0126452,0005302,0100002,0000137,0126216,0001072,0010400,
0000137,0126250,0005726,0000543,0004537,0124204,0004537,0126452,
0011204,0012703,0000004,0004737,0123476,0077303,0005002,0004737,
0123576,0020227,0000003,0103773,0004537,0126632,0000040,0000513,
0004537,0126474,0012701,0127342,0004737,0123664,0010004,0103403,
0162701,0127333,0010104,0005202,0006304,0062704,0127534,0020427,
0127574,0101402,0012704,0127614,0004537,0126632,0000057,0000562,
0004737,0126720,0022737,0000002,0127704,0001003,0013702,0127706,
0000205,0000427,0110237,0127714,0000427,0004537,0124200,0011202,
0000412,0004537,0124200,0111201,0005201,0006301,0060102,0000403,
0004537,0124200,0062202,0013737,0127706,0127710,0010237,0127706,
0000576,0004537,0126632,0000077,0005037,0127704,0004537,0126626,
0000052,0005037,0127712,0005003,0005005,0005037,0127702,0105037,
0127717,0005004,0005002,0012706,0127534,0004537,0126474,0120027,
0000055,0001005,0005702,0001345,0105237,0127717,0000764,0012701,
0127355,0004737,0123664,0103004,0006304,0004737,0123564,0000753,
0106237,0127717,0103001,0005404,0063704,0127702,0006301,0000171,
0050320,0077261,0163704,0127702,0006304,0016402,0127574,0010237,
0127702,0005202,0001722,0000723,0010203,0010405,0105237,0127712,
0000714,0005703,0001413,0010537,0127566,0004537,0126452,0012737,
0000002,0127704,0010500,0004537,0126274,0000666,0013704,0127566,
0151702,0000701,0012737,0000002,0127704,0000404,0006104,0012737,
0000001,0127704,0005702,0001402,0010437,0127706,0013704,0127706,
0022737,0000001,0127704,0001405,0006204,0103760,0017700,0003066,
0000401,0111400,0004537,0126274,0000634,0004737,0126720,0000624,
0105237,0127713,0013700,0127704,0001614,0004737,0126720,0105737,
0127713,0001403,0013737,0127710,0127706,0060037,0127706,0004537,
0126432,0013746,0127704,0012737,0000002,0127704,0013700,0127706,
0004537,0126206,0011637,0127704,0012700,0027534,0005326,0001401,
0000300,0004537,0126416,0000712,0013700,0127704,0001735,0004737,
0126720,0160037,0127706,0000743,0012700,0127412,0006304,0005703,
0001421,0006205,0103572,0006305,0062704,0127614,0005302,0001410,
0100164,0020014,0001405,0020427,0127632,0103157,0005724,0000771,
0010514,0000675,0005302,0100406,0001150,0010064,0127614,0005064,
0127636,0000665,0005004,0012764,0127412,0127614,0012764,0125712,
0127660,0005064,0127636,0005724,0020427,0000020,0101764,0000647,
0022737,0000002,0127704,0001121,0004537,0126632,0000040,0005703,
0001514,0163705,0127706,0005305,0005305,0010500,0004537,0126274,
0010500,0006200,0103414,0022700,0177600,0003011,0022700,0000177,
0002406,0005337,0127704,0004537,0126274,0005237,0127704,0000137,
0124322,0012700,0127562,0012001,0012002,0011000,0020102,0101327,
0000115,0005201,0000401,0005001,0005703,0001447,0012737,0000002,
0127704,0013702,0127562,0013704,0127560,0005104,0020237,0127564,
0101306,0105737,0177560,0100703,0012746,0040057,0011200,0005701,
0001036,0040400,0040405,0020005,0001016,0010446,0004537,0126432,
0010200,0004537,0126206,0016600,0000002,0004537,0126416,0011200,
0004537,0126274,0012604,0022226,0000741,0000137,0124302,0004537,
0125222,0110021,0000713,0004537,0125222,0010021,0000707,0000316,
0020005,0001742,0012716,0037137,0010003,0005203,0005203,0060203,
0020305,0001732,0000316,0110000,0005200,0006300,0060200,0020005,
0000723,0005703,0001742,0112737,0000021,0127716,0006205,0103735,
0006305,0010537,0127552,0004537,0126644,0105037,0127715,0105737,
0127714,0001013,0012704,0000016,0017464,0127614,0127660,0012774,
0000003,0127614,0005304,0005304,0002367,0012600,0012601,0012602,
0012603,0012604,0012605,0011606,0013746,0127554,0042716,0000020,
0111637,0177776,0005737,0127714,0001410,0052716,0000020,0012737,
0125712,0000014,0012737,0000340,0000016,0013746,0127552,0000006,
0113700,0127716,0002652,0005702,0001250,0005703,0001402,0010560,
0127636,0004537,0126644,0123727,0127716,0000016,0101306,0105737,
0127714,0001303,0105237,0127715,0000720,0012637,0127552,0012637,
0127554,0112737,0000021,0127716,0010637,0127550,0012706,0127550,
0010546,0010446,0010346,0010246,0010146,0010046,0113704,0127715,
0001405,0105304,0001652,0004537,0126626,0000043,0105737,0127714,
0001010,0005004,0016474,0127660,0127614,0005724,0020427,0000016,
0101771,0013705,0127552,0105737,0127714,0001024,0005745,0010537,
0127552,0012704,0000016,0020564,0127614,0001420,0005304,0005304,
0002372,0004537,0126546,0042502,0000040,0010500,0062737,0000002,
0127552,0000432,0112704,0000020,0010564,0127614,0110437,0127716,
0005364,0127636,0003260,0012764,0000001,0127636,0004537,0126546,
0000102,0113700,0127716,0006200,0062700,0035460,0004537,0126444,
0113704,0127716,0016400,0127614,0012737,0000002,0127704,0004537,
0126206,0000137,0124310,0005737,0127572,0001030,0010046,0012704,
0127574,0012700,0127410,0021614,0103403,0021410,0101401,0010400,
0005724,0020427,0127614,0103767,0161016,0162700,0127574,0103405,
0006200,0062700,0026060,0004537,0126444,0012600,0012703,0000006,
0012704,0177776,0022737,0000001,0127704,0001023,0110046,0006203,
0005204,0000300,0004537,0126362,0004537,0126452,0042716,0177600,
0121627,0000040,0103002,0012716,0000077,0012700,0020000,0052600,
0000431,0010046,0062704,0000003,0005000,0006116,0006100,0077403,
0062700,0020060,0004537,0126416,0077313,0005726,0000300,0105737,
0177564,0100375,0110037,0177566,0000205,0012700,0005015,0004537,
0126444,0005000,0004537,0126416,0000761,0012700,0000075,0000757,
0105737,0177560,0100375,0113700,0177562,0000207,0004737,0126460,
0005200,0042700,0177600,0005300,0001771,0120027,0000012,0001412,
0120027,0000140,0101402,0162700,0000040,0004537,0126416,0122700,
0000040,0001754,0000205,0113700,0127556,0100003,0113700,0127554,
0000404,0106200,0106000,0106000,0106000,0042700,0000020,0110037,
0177776,0113737,0177560,0127720,0113737,0177564,0127721,0105037,
0177560,0105037,0177564,0004537,0126432,0112500,0001675,0004537,
0126416,0000773,0112737,0000340,0177776,0004537,0126432,0105737,
0177564,0100375,0032737,0004000,0177560,0001403,0105737,0177560,
0100375,0113737,0127720,0177560,0113737,0127721,0177564,0000205,
0005702,0001412,0022737,0000001,0127704,0001404,0101005,0010477,
0000744,0000402,0110477,0000736,0000207,0004737,0126460,0010346,
0001404,0010516,0001002,0013716,0127570,0012705,0127056,0005001,
0005003,0004715,0077003,0004715,0004737,0127102,0010402,0162702,
0000004,0004737,0127102,0061604,0005702,0001431,0010401,0004715,
0002004,0105703,0001755,0000003,0000753,0110021,0000770,0052737,
0000001,0177560,0004737,0126460,0042700,0177400,0060003,0005302,
0000207,0004715,0010004,0004715,0000300,0050004,0000207,0005202,
0005201,0040201,0010137,0127570,0004715,0105703,0001344,0040204,
0010437,0127552,0112737,0000021,0127716,0000137,0124310,0004737,
0126460,0012703,0127240,0005001,0005000,0005200,0004513,0010400,
0062700,0000006,0160500,0004513,0010500,0004513,0020504,0103004,
0112500,0004537,0127246,0000772,0110100,0004513,0004513,0000745,
0004537,0127246,0000300,0160001,0000137,0126416,0124644,0124632,
0123766,0124120,0124442,0124544,0124470,0124640,0124242,0124232,
0124770,0124502,0127156,0125242,0125406,0125462,0125376,0126752,
0125120,0125640,0123710,0124224,0125246,0124050,0124556,0124750,
0124260,0050123,0046115,0041525,0043101,0041122,0005000,0020415,
0026044,0035457,0037074,0041100,0042103,0043105,0044507,0047514,
0051120,0053523,0056130,0057536,0000000,0000003
];