-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathzxbasmtab.py
311 lines (304 loc) · 50.4 KB
/
zxbasmtab.py
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
# zxbasmtab.py
# This file is automatically generated. Do not edit.
_tabversion = '3.2'
_lr_method = 'LALR'
_lr_signature = 'R\x96:\xbb\x9c\xf0\xc8\x10\r\x89\xf32z\xe2\x10\xaf'
_lr_action_items = {'CPI':([0,9,11,24,62,117,133,157,240,382,383,],[1,-13,1,1,-6,-7,-10,-12,-11,-8,-9,]),'CPL':([0,9,11,24,62,117,133,157,240,382,383,],[53,-13,53,53,-6,-7,-10,-12,-11,-8,-9,]),'BC':([25,41,52,70,72,189,248,250,262,269,270,352,],[138,138,138,138,138,253,324,335,138,392,396,415,]),'JP':([0,9,11,24,62,117,133,157,240,382,383,],[2,-13,2,2,-6,-7,-10,-12,-11,-8,-9,]),'JR':([0,9,11,24,62,117,133,157,240,382,383,],[3,-13,3,3,-6,-7,-10,-12,-11,-8,-9,]),'CCF':([0,9,11,24,62,117,133,157,240,382,383,],[5,-13,5,5,-6,-7,-10,-12,-11,-8,-9,]),'MINUS':([2,3,4,13,17,23,36,42,46,55,57,58,60,63,64,68,73,76,81,89,90,92,95,103,105,106,107,108,110,111,112,113,114,116,118,119,163,166,167,169,170,177,180,182,185,186,189,202,203,208,213,214,215,216,217,220,221,222,223,224,225,226,227,228,229,230,231,234,236,237,238,246,247,249,251,252,255,256,258,260,261,266,267,268,271,272,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,304,305,306,307,313,314,317,320,322,331,333,340,345,347,352,357,359,362,364,365,369,371,374,378,388,390,400,401,402,403,404,405,406,407,408,409,],[92,92,92,-159,92,-131,-132,-134,-160,92,92,92,92,-135,92,92,-158,-133,92,92,92,92,92,-276,-277,-278,225,230,225,92,230,225,230,92,225,230,92,225,230,225,230,92,225,230,225,230,92,225,230,92,225,230,225,-275,225,92,92,92,92,92,92,92,92,92,92,92,92,225,230,305,307,92,92,92,92,92,92,92,92,92,92,225,230,92,92,-274,225,230,-259,-269,-263,-273,-261,-271,-262,-272,-260,-270,-264,-268,-266,-267,-265,225,230,92,92,92,92,225,230,92,225,230,225,230,225,225,230,92,225,230,225,225,230,225,225,230,92,225,230,225,230,225,230,225,230,225,230,225,230,]),'EXX':([0,9,11,24,62,117,133,157,240,382,383,],[6,-13,6,6,-6,-7,-10,-12,-11,-8,-9,]),'Z':([2,3,45,89,],[104,104,104,104,]),'RP':([103,105,106,135,146,216,217,218,219,241,244,253,254,272,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,402,403,404,405,406,407,408,409,415,416,417,418,],[-276,-277,-278,-191,-190,-275,272,273,274,308,311,348,349,-274,-259,-269,-263,-273,-261,-271,-262,-272,-260,-270,-264,-268,-266,-267,-265,419,420,421,422,423,424,425,426,433,434,435,436,]),'RR':([0,9,11,24,62,117,133,157,240,382,383,],[7,-13,7,7,-6,-7,-10,-12,-11,-8,-9,]),'RETI':([0,9,11,24,62,117,133,157,240,382,383,],[8,-13,8,8,-6,-7,-10,-12,-11,-8,-9,]),'NEWLINE':([0,1,5,6,8,9,10,11,12,15,16,20,21,22,24,26,27,28,29,30,31,32,34,35,37,38,39,40,43,44,45,47,49,53,62,65,69,71,74,75,80,83,86,87,91,93,94,96,97,98,99,101,102,103,104,105,106,107,108,110,112,116,117,118,119,120,121,122,123,124,125,126,127,128,130,131,132,133,134,135,136,137,138,139,140,141,142,143,145,146,147,148,149,150,151,152,153,157,158,159,160,161,162,165,166,167,168,169,170,171,172,175,176,178,179,180,181,182,185,186,198,199,200,201,202,206,207,213,214,215,216,234,236,239,240,266,267,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,310,312,313,314,315,316,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,350,351,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,379,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,411,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,],[9,-233,-226,-225,-251,-13,-252,9,-249,-38,-235,-228,-245,-257,133,-231,-229,-227,-230,-240,-239,-232,-279,157,-242,-247,-243,-224,-256,-237,-250,-258,-255,-238,-6,-253,-241,-236,-234,-254,-246,-244,-248,-37,-205,-207,-206,-200,-199,-201,-84,-198,-197,-276,-204,-277,-278,-208,-212,-209,-213,235,-7,-211,-215,-148,-147,-178,-149,-146,-179,-175,-176,-177,-181,-180,-280,-10,240,-191,-75,-170,-186,-185,-187,-188,-189,-73,-173,-190,-172,-182,-183,-184,-171,-174,-169,-12,-74,-72,-196,-137,-136,-44,-46,-47,-45,-67,-68,-43,-42,-128,-124,-126,-127,-129,-125,-130,-65,-66,-139,-138,-69,-282,-217,-39,-40,-210,-214,-216,-275,302,303,-281,-11,382,383,-274,-85,-54,-192,-193,-259,-269,-263,-273,-261,-271,-262,-272,-260,-270,-264,-268,-266,-267,-265,-202,-203,-156,-152,-150,-154,-157,-153,-151,-155,-64,-223,-48,-49,-123,-98,-100,-101,-119,-99,-120,-107,-106,-109,-108,-121,-86,-88,-89,-115,-87,-116,-92,-91,-90,-93,-50,-51,-83,-52,-16,-20,-14,-76,-30,-77,-53,-19,-23,-22,-24,-26,-80,-28,-143,-15,-21,-79,-25,-78,-144,-27,-31,-29,-82,-32,-81,-18,-17,-145,-140,-142,-141,-222,-41,-8,-9,-122,-94,-96,-97,-117,-95,-118,-105,-102,-103,-104,-113,-110,-114,-111,-112,-194,-195,-63,-57,-61,-58,-62,-55,-59,-56,-60,-71,-70,-220,-221,-35,-36,-33,-34,-218,-219,]),'RETN':([0,9,11,24,62,117,133,157,240,382,383,],[10,-13,10,10,-6,-7,-10,-12,-11,-8,-9,]),'INIR':([0,9,11,24,62,117,133,157,240,382,383,],[12,-13,12,12,-6,-7,-10,-12,-11,-8,-9,]),'RES':([0,9,11,24,62,117,133,157,240,382,383,],[13,-13,13,13,-6,-7,-10,-12,-11,-8,-9,]),'RL':([0,9,11,24,62,117,133,157,240,382,383,],[14,-13,14,14,-6,-7,-10,-12,-11,-8,-9,]),'ENDP':([0,9,11,24,62,117,133,157,240,382,383,],[15,-13,15,15,-6,-7,-10,-12,-11,-8,-9,]),'IXH':([23,25,36,41,42,63,64,70,76,247,249,252,255,260,268,],[-131,148,-132,148,-134,-135,148,148,-133,148,148,148,148,148,148,]),'D':([7,14,18,23,25,36,41,42,48,50,56,59,63,64,66,70,76,79,82,232,233,247,249,251,252,255,256,260,268,412,],[-161,-162,131,-131,131,-132,131,-134,-163,-165,-167,-168,-135,131,-164,131,-133,-166,131,131,131,131,131,131,131,131,131,131,131,131,]),'IXL':([23,25,36,41,42,63,64,70,76,247,249,252,255,260,268,],[-131,149,-132,149,-134,-135,149,149,-133,149,149,149,149,149,149,]),'CPD':([0,9,11,24,62,117,133,157,240,382,383,],[16,-13,16,16,-6,-7,-10,-12,-11,-8,-9,]),'DJNZ':([0,9,11,24,62,117,133,157,240,382,383,],[17,-13,17,17,-6,-7,-10,-12,-11,-8,-9,]),'EQU':([85,],[208,]),'L':([7,14,18,23,25,36,41,42,48,50,56,59,63,64,66,70,76,79,82,232,233,247,249,251,252,255,256,268,412,],[-161,-162,127,-131,127,-132,127,-134,-163,-165,-167,-168,-135,127,-164,127,-133,-166,127,127,127,127,127,127,127,127,127,127,127,]),'P':([2,45,89,],[102,102,102,]),'END':([9,11,62,117,133,157,240,382,383,],[-13,116,-6,-7,-10,-12,-11,-8,-9,]),'_LINE':([0,9,11,24,62,117,133,157,240,382,383,],[19,-13,19,19,-6,-7,-10,-12,-11,-8,-9,]),'ADDR':([2,3,4,13,17,23,36,42,46,55,57,58,60,63,64,68,73,76,81,89,90,92,95,111,116,163,177,189,208,220,221,222,223,224,225,226,227,228,229,230,231,246,247,249,251,252,255,256,258,260,261,268,271,304,305,306,307,317,352,378,],[106,106,106,-159,106,-131,-132,-134,-160,106,106,106,106,-135,106,106,-158,-133,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,106,]),'LDIR':([0,9,11,24,62,117,133,157,240,382,383,],[20,-13,20,20,-6,-7,-10,-12,-11,-8,-9,]),'OTIR':([0,9,11,24,62,117,133,157,240,382,383,],[21,-13,21,21,-6,-7,-10,-12,-11,-8,-9,]),'APO':([309,],[411,]),'OR':([0,9,11,24,62,117,133,157,240,382,383,],[23,-13,23,23,-6,-7,-10,-12,-11,-8,-9,]),'IY':([25,41,52,70,72,88,95,129,144,177,189,261,262,270,317,352,410,],[135,135,135,135,135,135,135,237,237,237,237,135,135,135,237,237,135,]),'LABEL':([0,9,11,62,117,133,157,240,382,383,],[24,-13,24,-6,-7,-10,-12,-11,-8,-9,]),'HL':([25,41,52,61,67,70,72,88,95,129,144,177,189,243,248,250,261,262,269,270,317,352,410,],[141,141,141,174,184,141,141,210,219,219,219,219,219,310,326,337,373,141,394,399,219,219,427,]),'E':([7,14,18,23,25,36,41,42,48,50,56,59,63,64,66,70,76,79,82,232,233,247,249,251,252,255,256,260,268,412,],[-161,-162,130,-131,130,-132,130,-134,-163,-165,-167,-168,-135,130,-164,130,-133,-166,130,130,130,130,130,130,130,130,130,130,130,130,]),'DEC':([0,9,11,24,62,117,133,157,240,382,383,],[25,-13,25,25,-6,-7,-10,-12,-11,-8,-9,]),'LDD':([0,9,11,24,62,117,133,157,240,382,383,],[26,-13,26,26,-6,-7,-10,-12,-11,-8,-9,]),'LDI':([0,9,11,24,62,117,133,157,240,382,383,],[27,-13,27,27,-6,-7,-10,-12,-11,-8,-9,]),'SCF':([0,9,11,24,62,117,133,157,240,382,383,],[28,-13,28,28,-6,-7,-10,-12,-11,-8,-9,]),'PE':([2,45,89,],[96,96,96,]),'INTEGER':([2,3,4,13,17,19,23,36,42,46,55,57,58,60,63,64,68,73,76,81,89,90,92,95,111,116,163,177,189,208,220,221,222,223,224,225,226,227,228,229,230,231,246,247,249,251,252,255,256,258,260,261,268,271,304,305,306,307,317,352,378,],[103,103,103,-159,103,132,-131,-132,-134,-160,103,103,103,103,-135,103,103,-158,-133,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,103,]),'LDDR':([0,9,11,24,62,117,133,157,240,382,383,],[29,-13,29,29,-6,-7,-10,-12,-11,-8,-9,]),'PO':([2,45,89,],[97,97,97,]),'$end':([9,11,51,62,115,117,133,157,235,240,302,303,382,383,],[-13,-1,0,-6,-2,-7,-10,-12,-3,-11,-4,-5,-8,-9,]),'C':([2,3,7,14,18,23,25,36,41,42,45,48,50,56,59,63,64,66,70,76,79,82,89,163,232,233,247,249,251,252,255,256,260,268,378,380,412,],[91,91,-161,-162,125,-131,125,-132,125,-134,91,-163,-165,-167,-168,-135,125,-164,125,-133,-166,125,91,244,125,125,125,125,125,125,125,125,125,125,417,418,125,]),'EI':([0,9,11,24,62,117,133,157,240,382,383,],[30,-13,30,30,-6,-7,-10,-12,-11,-8,-9,]),'HALT':([0,9,11,24,62,117,133,157,240,382,383,],[31,-13,31,31,-6,-7,-10,-12,-11,-8,-9,]),'_INIT':([0,9,11,24,62,117,133,157,240,382,383,],[78,-13,78,78,-6,-7,-10,-12,-11,-8,-9,]),'CPIR':([0,9,11,24,62,117,133,157,240,382,383,],[32,-13,32,32,-6,-7,-10,-12,-11,-8,-9,]),'EX':([0,9,11,24,62,117,133,157,240,382,383,],[33,-13,33,33,-6,-7,-10,-12,-11,-8,-9,]),'AND':([0,9,11,24,62,117,133,157,240,382,383,],[36,-13,36,36,-6,-7,-10,-12,-11,-8,-9,]),'OUTD':([0,9,11,24,62,117,133,157,240,382,383,],[37,-13,37,37,-6,-7,-10,-12,-11,-8,-9,]),'INI':([0,9,11,24,62,117,133,157,240,382,383,],[38,-13,38,38,-6,-7,-10,-12,-11,-8,-9,]),'IND':([0,9,11,24,62,117,133,157,240,382,383,],[80,-13,80,80,-6,-7,-10,-12,-11,-8,-9,]),'OUTI':([0,9,11,24,62,117,133,157,240,382,383,],[39,-13,39,39,-6,-7,-10,-12,-11,-8,-9,]),'PROC':([0,9,11,24,62,117,133,157,240,382,383,],[87,-13,87,87,-6,-7,-10,-12,-11,-8,-9,]),'INC':([0,9,11,24,62,117,133,157,240,382,383,],[41,-13,41,41,-6,-7,-10,-12,-11,-8,-9,]),'NC':([2,3,45,89,],[93,93,93,93,]),'SUB':([0,9,11,24,62,117,133,157,240,382,383,],[42,-13,42,42,-6,-7,-10,-12,-11,-8,-9,]),'RRCA':([0,9,11,24,62,117,133,157,240,382,383,],[43,-13,43,43,-6,-7,-10,-12,-11,-8,-9,]),'NEG':([0,9,11,24,62,117,133,157,240,382,383,],[44,-13,44,44,-6,-7,-10,-12,-11,-8,-9,]),'RET':([0,9,11,24,62,117,133,157,240,382,383,],[45,-13,45,45,-6,-7,-10,-12,-11,-8,-9,]),'MUL':([103,105,106,107,108,110,112,113,114,118,119,166,167,169,170,180,182,185,186,202,203,213,214,215,216,217,234,236,266,267,272,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,313,314,320,322,331,333,340,345,347,357,359,362,364,365,369,371,374,388,390,400,401,402,403,404,405,406,407,408,409,],[-276,-277,-278,223,228,223,228,223,228,223,228,223,228,223,228,223,228,223,228,223,228,223,228,223,-275,223,223,228,223,228,-274,223,228,223,228,-263,-273,-261,-271,-262,-272,223,228,223,-268,-266,-267,223,223,228,223,228,223,228,223,228,223,223,228,223,228,223,223,228,223,223,228,223,228,223,228,223,228,223,228,223,228,223,228,]),'SET':([0,9,11,24,62,117,133,157,240,382,383,],[46,-13,46,46,-6,-7,-10,-12,-11,-8,-9,]),'RRD':([0,9,11,24,62,117,133,157,240,382,383,],[47,-13,47,47,-6,-7,-10,-12,-11,-8,-9,]),'RRC':([0,9,11,24,62,117,133,157,240,382,383,],[48,-13,48,48,-6,-7,-10,-12,-11,-8,-9,]),'RRA':([0,9,11,24,62,117,133,157,240,382,383,],[49,-13,49,49,-6,-7,-10,-12,-11,-8,-9,]),'SLA':([0,9,11,24,62,117,133,157,240,382,383,],[50,-13,50,50,-6,-7,-10,-12,-11,-8,-9,]),'NZ':([2,3,45,89,],[94,94,94,94,]),'PUSH':([0,9,11,24,62,117,133,157,240,382,383,],[52,-13,52,52,-6,-7,-10,-12,-11,-8,-9,]),'PLUS':([103,105,106,107,108,110,112,113,114,118,119,166,167,169,170,180,182,185,186,202,203,213,214,215,216,217,234,236,237,238,266,267,272,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,313,314,320,322,331,333,340,345,347,357,359,362,364,365,369,371,374,388,390,400,401,402,403,404,405,406,407,408,409,],[-276,-277,-278,221,226,221,226,221,226,221,226,221,226,221,226,221,226,221,226,221,226,221,226,221,-275,221,221,226,304,306,221,226,-274,221,226,-259,-269,-263,-273,-261,-271,-262,-272,-260,-270,-264,-268,-266,-267,-265,221,226,221,226,221,226,221,226,221,221,226,221,226,221,221,226,221,221,226,221,226,221,226,221,226,221,226,221,226,221,226,]),'OUT':([0,9,11,24,62,117,133,157,240,382,383,],[54,-13,54,54,-6,-7,-10,-12,-11,-8,-9,]),'DEFS':([0,9,11,24,62,117,133,157,240,382,383,],[55,-13,55,55,-6,-7,-10,-12,-11,-8,-9,]),'SRA':([0,9,11,24,62,117,133,157,240,382,383,],[56,-13,56,56,-6,-7,-10,-12,-11,-8,-9,]),'DEFW':([0,9,11,24,62,117,133,157,240,382,383,],[57,-13,57,57,-6,-7,-10,-12,-11,-8,-9,]),'ALIGN':([0,9,11,24,62,117,133,157,240,382,383,],[58,-13,58,58,-6,-7,-10,-12,-11,-8,-9,]),'SRL':([0,9,11,24,62,117,133,157,240,382,383,],[59,-13,59,59,-6,-7,-10,-12,-11,-8,-9,]),'DEFB':([0,9,11,24,62,117,133,157,240,382,383,],[60,-13,60,60,-6,-7,-10,-12,-11,-8,-9,]),'ADD':([0,9,11,24,62,117,133,157,240,382,383,],[88,-13,88,88,-6,-7,-10,-12,-11,-8,-9,]),'R':([70,255,],[194,356,]),'ADC':([0,9,11,24,62,117,133,157,240,382,383,],[61,-13,61,61,-6,-7,-10,-12,-11,-8,-9,]),'CP':([0,9,11,24,62,117,133,157,240,382,383,],[63,-13,63,63,-6,-7,-10,-12,-11,-8,-9,]),'RLD':([0,9,11,24,62,117,133,157,240,382,383,],[22,-13,22,22,-6,-7,-10,-12,-11,-8,-9,]),'SP':([25,41,70,154,248,250,262,269,270,],[153,153,196,241,325,336,376,391,395,]),'RLA':([0,9,11,24,62,117,133,157,240,382,383,],[65,-13,65,65,-6,-7,-10,-12,-11,-8,-9,]),'RLC':([0,9,11,24,62,117,133,157,240,382,383,],[66,-13,66,66,-6,-7,-10,-12,-11,-8,-9,]),'SBC':([0,9,11,24,62,117,133,157,240,382,383,],[67,-13,67,67,-6,-7,-10,-12,-11,-8,-9,]),'ORG':([0,9,11,24,62,117,133,157,240,382,383,],[68,-13,68,68,-6,-7,-10,-12,-11,-8,-9,]),'DI':([0,9,11,24,62,117,133,157,240,382,383,],[69,-13,69,69,-6,-7,-10,-12,-11,-8,-9,]),'IYL':([23,25,36,41,42,63,64,70,76,247,249,252,255,260,268,],[-131,139,-132,139,-134,-135,139,139,-133,139,139,139,139,139,139,]),'DE':([25,33,41,52,70,72,189,248,250,262,269,270,352,],[140,156,140,140,140,140,254,323,334,140,393,398,416,]),'IYH':([23,25,36,41,42,63,64,70,76,247,249,252,255,260,268,],[-131,150,-132,150,-134,-135,150,150,-133,150,150,150,150,150,150,]),'B':([7,14,18,23,25,36,41,42,48,50,56,59,63,64,66,70,76,79,82,232,233,247,249,251,252,255,256,260,268,412,],[-161,-162,122,-131,122,-132,122,-134,-163,-165,-167,-168,-135,122,-164,122,-133,-166,122,122,122,122,122,122,122,122,122,122,122,122,]),'DIV':([103,105,106,107,108,110,112,113,114,118,119,166,167,169,170,180,182,185,186,202,203,213,214,215,216,217,234,236,266,267,272,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,313,314,320,322,331,333,340,345,347,357,359,362,364,365,369,371,374,388,390,400,401,402,403,404,405,406,407,408,409,],[-276,-277,-278,224,229,224,229,224,229,224,229,224,229,224,229,224,229,224,229,224,229,224,229,224,-275,224,224,229,224,229,-274,224,229,224,229,-263,-273,-261,-271,-262,-272,224,229,224,-268,-266,-267,224,224,229,224,229,224,229,224,229,224,224,229,224,229,224,224,229,224,224,229,224,229,224,229,224,229,224,229,224,229,224,229,]),'LD':([0,9,11,24,62,117,133,157,240,382,383,],[70,-13,70,70,-6,-7,-10,-12,-11,-8,-9,]),'DAA':([0,9,11,24,62,117,133,157,240,382,383,],[71,-13,71,71,-6,-7,-10,-12,-11,-8,-9,]),'POW':([103,105,106,107,108,110,112,113,114,118,119,166,167,169,170,180,182,185,186,202,203,213,214,215,216,217,234,236,266,267,272,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,313,314,320,322,331,333,340,345,347,357,359,362,364,365,369,371,374,388,390,400,401,402,403,404,405,406,407,408,409,],[-276,-277,-278,222,227,222,227,222,227,222,227,222,227,222,227,222,227,222,227,222,227,222,227,222,-275,222,222,227,222,227,-274,222,227,222,227,222,227,222,227,222,227,222,227,222,222,222,222,222,222,227,222,227,222,227,222,227,222,222,227,222,227,222,222,227,222,222,227,222,227,222,227,222,227,222,227,222,227,222,227,]),'POP':([0,9,11,24,62,117,133,157,240,382,383,],[72,-13,72,72,-6,-7,-10,-12,-11,-8,-9,]),'COMMA':([91,93,94,96,97,98,100,101,102,103,104,105,106,109,113,114,122,125,126,127,128,130,131,135,138,139,140,141,142,146,148,149,150,155,156,164,165,166,167,168,172,173,174,183,184,187,188,190,191,192,193,194,195,196,197,204,205,206,207,209,210,211,212,216,272,274,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,308,311,313,314,348,349,381,419,420,421,422,423,424,425,426,],[-205,-207,-206,-200,-199,-201,220,-198,-197,-276,-204,-277,-278,231,232,233,-178,-179,-175,-176,-177,-181,-180,-191,-186,-185,-187,-188,-189,-190,-182,-183,-184,242,243,245,246,-46,-47,246,246,247,248,249,250,251,252,255,256,257,258,259,260,261,262,263,264,265,-40,268,269,270,271,-275,-274,-54,-259,-269,-263,-273,-261,-271,-262,-272,-260,-270,-264,-268,-266,-267,-265,410,412,-48,-49,413,414,-41,-57,-61,-58,-62,-55,-59,-56,-60,]),'LP':([2,3,4,7,13,14,17,18,23,25,33,36,41,42,46,48,50,54,55,56,57,58,59,60,63,64,66,68,70,73,76,79,81,89,90,92,95,111,116,163,177,189,208,220,221,222,223,224,225,226,227,228,229,230,231,232,233,246,247,249,251,252,255,256,258,260,261,263,264,268,271,304,305,306,307,317,352,378,],[95,111,111,-161,-159,-162,111,129,-131,144,154,-132,144,-134,-160,-163,-165,163,111,-167,111,111,-168,111,-135,177,-164,111,189,-158,-133,-166,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111,129,129,111,317,317,111,177,352,111,111,111,111,378,380,317,111,111,111,111,111,111,111,111,]),'H':([7,14,18,23,25,36,41,42,48,50,56,59,63,64,66,70,76,79,82,232,233,247,249,251,252,255,256,268,412,],[-161,-162,126,-131,126,-132,126,-134,-163,-165,-167,-168,-135,126,-164,126,-133,-166,126,126,126,126,126,126,126,126,126,126,126,]),'BIT':([0,9,11,24,62,117,133,157,240,382,383,],[73,-13,73,73,-6,-7,-10,-12,-11,-8,-9,]),'CPDR':([0,9,11,24,62,117,133,157,240,382,383,],[74,-13,74,74,-6,-7,-10,-12,-11,-8,-9,]),'A':([7,14,18,23,25,36,41,42,48,50,56,59,61,63,64,66,67,70,76,79,82,88,232,233,245,247,249,251,252,255,256,257,259,260,262,268,412,413,414,],[-161,-162,120,-131,145,-132,145,-134,-163,-165,-167,-168,173,-135,178,-164,183,190,-133,-166,204,209,296,300,312,318,329,339,343,353,361,363,366,368,375,386,429,431,432,]),'IX':([25,41,52,70,72,88,95,129,144,177,189,261,262,270,317,352,410,],[146,146,146,146,146,146,146,238,238,238,238,146,146,146,238,238,146,]),'RLCA':([0,9,11,24,62,117,133,157,240,382,383,],[75,-13,75,75,-6,-7,-10,-12,-11,-8,-9,]),'XOR':([0,9,11,24,62,117,133,157,240,382,383,],[76,-13,76,76,-6,-7,-10,-12,-11,-8,-9,]),'STRING':([60,77,132,],[171,200,239,]),'AF':([33,52,72,242,],[155,162,199,309,]),'I':([70,255,],[192,355,]),'INCBIN':([0,9,11,24,62,117,133,157,240,382,383,],[77,-13,77,77,-6,-7,-10,-12,-11,-8,-9,]),'M':([2,45,89,],[101,101,101,]),'SLL':([0,9,11,24,62,117,133,157,240,382,383,],[79,-13,79,79,-6,-7,-10,-12,-11,-8,-9,]),'IM':([0,9,11,24,62,117,133,157,240,382,383,],[81,-13,81,81,-6,-7,-10,-12,-11,-8,-9,]),'IN':([0,9,11,24,62,117,133,157,240,382,383,],[82,-13,82,82,-6,-7,-10,-12,-11,-8,-9,]),'OTDR':([0,9,11,24,62,117,133,157,240,382,383,],[83,-13,83,83,-6,-7,-10,-12,-11,-8,-9,]),'LOCAL':([0,9,11,24,62,117,133,157,240,382,383,],[84,-13,84,84,-6,-7,-10,-12,-11,-8,-9,]),'ID':([0,2,3,4,9,11,13,17,23,36,42,46,55,57,58,60,62,63,64,68,73,76,78,81,84,89,90,92,95,111,116,117,133,157,163,177,189,208,220,221,222,223,224,225,226,227,228,229,230,231,240,246,247,249,251,252,255,256,258,260,261,265,268,271,304,305,306,307,317,352,378,382,383,],[85,105,105,105,-13,85,-159,105,-131,-132,-134,-160,105,105,105,105,-6,-135,105,105,-158,-133,201,105,207,105,105,105,105,105,105,-7,-10,-12,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,-11,105,105,105,105,105,105,105,105,105,105,381,105,105,105,105,105,105,105,105,105,-8,-9,]),'INDR':([0,9,11,24,62,117,133,157,240,382,383,],[86,-13,86,86,-6,-7,-10,-12,-11,-8,-9,]),'NOP':([0,9,11,24,62,117,133,157,240,382,383,],[40,-13,40,40,-6,-7,-10,-12,-11,-8,-9,]),'CALL':([0,9,11,24,62,117,133,157,240,382,383,],[89,-13,89,89,-6,-7,-10,-12,-11,-8,-9,]),'RST':([0,9,11,24,62,117,133,157,240,382,383,],[90,-13,90,90,-6,-7,-10,-12,-11,-8,-9,]),}
_lr_action = { }
for _k, _v in _lr_action_items.items():
for _x,_y in zip(_v[0],_v[1]):
if not _x in _lr_action: _lr_action[_x] = { }
_lr_action[_x][_k] = _y
del _lr_action_items
_lr_goto_items = {'reg8_I':([18,25,41,64,70,232,233,247,249,252,255,268,],[123,136,158,175,187,294,298,315,327,341,350,384,]),'reg8':([18,25,41,64,70,82,232,233,247,249,251,252,255,256,268,412,],[124,137,137,176,188,205,295,299,316,328,338,342,351,360,385,430,]),'regBCDE':([18,25,41,64,70,82,232,233,247,249,251,252,255,256,260,268,412,],[128,128,128,128,128,128,128,128,128,128,128,128,128,128,367,128,128,]),'id_list':([84,],[206,]),'bitop':([0,11,24,],[4,4,4,]),'rotation':([0,11,24,],[18,18,18,]),'number_list':([55,57,60,],[165,168,172,]),'reg16i':([25,41,52,70,72,88,95,261,262,270,410,],[142,142,142,142,142,211,218,372,142,397,428,]),'start':([0,],[51,]),'program':([0,],[11,]),'inc_reg':([25,41,],[143,159,]),'jr_flags':([2,3,45,89,],[98,109,98,98,]),'reg8_hl':([2,18,25,41,64,70,232,233,247,249,252,255,268,],[99,121,147,147,179,191,297,301,319,330,344,354,387,]),'jp_flags':([2,45,89,],[100,160,212,]),'reg16':([25,41,52,70,72,262,],[151,151,161,193,198,377,]),'preproc_line':([0,11,24,],[34,34,34,]),'line':([0,11,],[62,117,]),'asm':([0,11,24,],[35,35,134,]),'bitwiseop':([0,11,24,],[64,64,64,]),'expr':([2,3,4,17,55,57,58,60,64,68,81,89,90,92,95,111,116,163,177,189,208,220,221,222,223,224,225,226,227,228,229,230,231,246,247,249,251,252,255,256,258,260,261,268,271,304,305,306,307,317,352,378,],[107,110,113,118,166,166,169,166,180,185,202,213,215,216,217,217,234,217,217,217,266,275,277,279,281,283,285,287,288,289,290,291,292,313,320,331,340,345,357,362,364,369,371,388,400,402,404,406,408,217,217,217,]),'reg8i':([25,41,64,70,247,249,252,255,260,268,],[152,152,181,195,321,332,346,358,370,389,]),'pexpr':([2,3,4,17,54,55,57,58,60,64,68,70,81,89,90,92,95,111,116,163,177,189,208,220,221,222,223,224,225,226,227,228,229,230,231,246,247,249,251,252,255,256,258,260,261,263,268,271,304,305,306,307,317,352,378,],[108,112,114,119,164,167,167,170,167,182,186,197,203,214,203,203,203,203,236,203,203,203,267,276,278,280,282,284,286,203,203,203,203,203,293,314,322,333,203,347,359,203,365,203,374,379,390,401,403,405,407,409,203,203,203,]),'endline':([11,],[115,]),}
_lr_goto = { }
for _k, _v in _lr_goto_items.items():
for _x,_y in zip(_v[0],_v[1]):
if not _x in _lr_goto: _lr_goto[_x] = { }
_lr_goto[_x][_k] = _y
del _lr_goto_items
_lr_productions = [
("S' -> start","S'",1,None,None,None),
('start -> program','start',1,'p_start','/home/dave/code/zx-speccy/zxbasic/asmparse.py',477),
('start -> program endline','start',2,'p_start','/home/dave/code/zx-speccy/zxbasic/asmparse.py',478),
('endline -> END NEWLINE','endline',2,'p_program_endline','/home/dave/code/zx-speccy/zxbasic/asmparse.py',482),
('endline -> END expr NEWLINE','endline',3,'p_program_endline2','/home/dave/code/zx-speccy/zxbasic/asmparse.py',486),
('endline -> END pexpr NEWLINE','endline',3,'p_program_endline2','/home/dave/code/zx-speccy/zxbasic/asmparse.py',487),
('program -> line','program',1,'p_program','/home/dave/code/zx-speccy/zxbasic/asmparse.py',494),
('program -> program line','program',2,'p_program_line','/home/dave/code/zx-speccy/zxbasic/asmparse.py',502),
('line -> ID EQU expr NEWLINE','line',4,'p_def_label','/home/dave/code/zx-speccy/zxbasic/asmparse.py',510),
('line -> ID EQU pexpr NEWLINE','line',4,'p_def_label','/home/dave/code/zx-speccy/zxbasic/asmparse.py',511),
('line -> LABEL NEWLINE','line',2,'p_line_label','/home/dave/code/zx-speccy/zxbasic/asmparse.py',520),
('line -> LABEL asm NEWLINE','line',3,'p_line_label_asm','/home/dave/code/zx-speccy/zxbasic/asmparse.py',529),
('line -> asm NEWLINE','line',2,'p_line_asm','/home/dave/code/zx-speccy/zxbasic/asmparse.py',538),
('line -> NEWLINE','line',1,'p_line_newline','/home/dave/code/zx-speccy/zxbasic/asmparse.py',544),
('asm -> LD reg8 COMMA reg8_hl','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',550),
('asm -> LD reg8_hl COMMA reg8','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',551),
('asm -> LD reg8 COMMA reg8','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',552),
('asm -> LD SP COMMA HL','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',553),
('asm -> LD SP COMMA reg16i','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',554),
('asm -> LD A COMMA reg8','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',555),
('asm -> LD reg8 COMMA A','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',556),
('asm -> LD reg8_hl COMMA A','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',557),
('asm -> LD A COMMA reg8_hl','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',558),
('asm -> LD A COMMA A','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',559),
('asm -> LD A COMMA I','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',560),
('asm -> LD I COMMA A','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',561),
('asm -> LD A COMMA R','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',562),
('asm -> LD R COMMA A','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',563),
('asm -> LD A COMMA reg8i','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',564),
('asm -> LD reg8i COMMA A','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',565),
('asm -> LD reg8 COMMA reg8i','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',566),
('asm -> LD reg8i COMMA regBCDE','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',567),
('asm -> LD reg8i COMMA reg8i','asm',4,'p_asm_ld8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',568),
('asm -> LD A COMMA LP BC RP','asm',6,'p_LDa','/home/dave/code/zx-speccy/zxbasic/asmparse.py',578),
('asm -> LD A COMMA LP DE RP','asm',6,'p_LDa','/home/dave/code/zx-speccy/zxbasic/asmparse.py',579),
('asm -> LD LP BC RP COMMA A','asm',6,'p_LDa','/home/dave/code/zx-speccy/zxbasic/asmparse.py',580),
('asm -> LD LP DE RP COMMA A','asm',6,'p_LDa','/home/dave/code/zx-speccy/zxbasic/asmparse.py',581),
('asm -> PROC','asm',1,'p_PROC','/home/dave/code/zx-speccy/zxbasic/asmparse.py',587),
('asm -> ENDP','asm',1,'p_ENDP','/home/dave/code/zx-speccy/zxbasic/asmparse.py',594),
('asm -> LOCAL id_list','asm',2,'p_LOCAL','/home/dave/code/zx-speccy/zxbasic/asmparse.py',601),
('id_list -> ID','id_list',1,'p_idlist','/home/dave/code/zx-speccy/zxbasic/asmparse.py',611),
('id_list -> id_list COMMA ID','id_list',3,'p_idlist_id','/home/dave/code/zx-speccy/zxbasic/asmparse.py',617),
('asm -> DEFB number_list','asm',2,'p_DEFB','/home/dave/code/zx-speccy/zxbasic/asmparse.py',623),
('asm -> DEFB STRING','asm',2,'p_DEFB','/home/dave/code/zx-speccy/zxbasic/asmparse.py',624),
('asm -> DEFS number_list','asm',2,'p_DEFS','/home/dave/code/zx-speccy/zxbasic/asmparse.py',630),
('asm -> DEFW number_list','asm',2,'p_DEFW','/home/dave/code/zx-speccy/zxbasic/asmparse.py',643),
('number_list -> expr','number_list',1,'p_number_list','/home/dave/code/zx-speccy/zxbasic/asmparse.py',649),
('number_list -> pexpr','number_list',1,'p_number_list','/home/dave/code/zx-speccy/zxbasic/asmparse.py',650),
('number_list -> number_list COMMA expr','number_list',3,'p_number_list_number','/home/dave/code/zx-speccy/zxbasic/asmparse.py',656),
('number_list -> number_list COMMA pexpr','number_list',3,'p_number_list_number','/home/dave/code/zx-speccy/zxbasic/asmparse.py',657),
('asm -> LD reg8_I COMMA reg8','asm',4,'p_asm_ldind_r8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',663),
('asm -> LD reg8_I COMMA A','asm',4,'p_asm_ldind_r8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',664),
('asm -> LD reg8 COMMA reg8_I','asm',4,'p_asm_ldr8_ind','/home/dave/code/zx-speccy/zxbasic/asmparse.py',670),
('asm -> LD A COMMA reg8_I','asm',4,'p_asm_ldr8_ind','/home/dave/code/zx-speccy/zxbasic/asmparse.py',671),
('reg8_hl -> LP HL RP','reg8_hl',3,'p_reg8_hl','/home/dave/code/zx-speccy/zxbasic/asmparse.py',677),
('reg8_I -> LP IX PLUS expr RP','reg8_I',5,'p_ind8_I','/home/dave/code/zx-speccy/zxbasic/asmparse.py',683),
('reg8_I -> LP IX MINUS expr RP','reg8_I',5,'p_ind8_I','/home/dave/code/zx-speccy/zxbasic/asmparse.py',684),
('reg8_I -> LP IY PLUS expr RP','reg8_I',5,'p_ind8_I','/home/dave/code/zx-speccy/zxbasic/asmparse.py',685),
('reg8_I -> LP IY MINUS expr RP','reg8_I',5,'p_ind8_I','/home/dave/code/zx-speccy/zxbasic/asmparse.py',686),
('reg8_I -> LP IX PLUS pexpr RP','reg8_I',5,'p_ind8_I','/home/dave/code/zx-speccy/zxbasic/asmparse.py',687),
('reg8_I -> LP IX MINUS pexpr RP','reg8_I',5,'p_ind8_I','/home/dave/code/zx-speccy/zxbasic/asmparse.py',688),
('reg8_I -> LP IY PLUS pexpr RP','reg8_I',5,'p_ind8_I','/home/dave/code/zx-speccy/zxbasic/asmparse.py',689),
('reg8_I -> LP IY MINUS pexpr RP','reg8_I',5,'p_ind8_I','/home/dave/code/zx-speccy/zxbasic/asmparse.py',690),
('asm -> EX AF COMMA AF APO','asm',5,'p_ex_af_af','/home/dave/code/zx-speccy/zxbasic/asmparse.py',700),
('asm -> EX DE COMMA HL','asm',4,'p_ex_de_hl','/home/dave/code/zx-speccy/zxbasic/asmparse.py',706),
('asm -> ORG expr','asm',2,'p_org','/home/dave/code/zx-speccy/zxbasic/asmparse.py',712),
('asm -> ORG pexpr','asm',2,'p_org','/home/dave/code/zx-speccy/zxbasic/asmparse.py',713),
('asm -> ALIGN expr','asm',2,'p_align','/home/dave/code/zx-speccy/zxbasic/asmparse.py',719),
('asm -> ALIGN pexpr','asm',2,'p_align','/home/dave/code/zx-speccy/zxbasic/asmparse.py',720),
('asm -> INCBIN STRING','asm',2,'p_incbin','/home/dave/code/zx-speccy/zxbasic/asmparse.py',730),
('asm -> EX LP SP RP COMMA reg16i','asm',6,'p_ex_sp_reg8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',741),
('asm -> EX LP SP RP COMMA HL','asm',6,'p_ex_sp_reg8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',742),
('asm -> INC inc_reg','asm',2,'p_incdec','/home/dave/code/zx-speccy/zxbasic/asmparse.py',748),
('asm -> DEC inc_reg','asm',2,'p_incdec','/home/dave/code/zx-speccy/zxbasic/asmparse.py',749),
('asm -> INC reg8_I','asm',2,'p_incdeci','/home/dave/code/zx-speccy/zxbasic/asmparse.py',755),
('asm -> DEC reg8_I','asm',2,'p_incdeci','/home/dave/code/zx-speccy/zxbasic/asmparse.py',756),
('asm -> LD reg8 COMMA expr','asm',4,'p_LD_reg_val','/home/dave/code/zx-speccy/zxbasic/asmparse.py',762),
('asm -> LD reg8 COMMA pexpr','asm',4,'p_LD_reg_val','/home/dave/code/zx-speccy/zxbasic/asmparse.py',763),
('asm -> LD reg16 COMMA expr','asm',4,'p_LD_reg_val','/home/dave/code/zx-speccy/zxbasic/asmparse.py',764),
('asm -> LD reg8_hl COMMA expr','asm',4,'p_LD_reg_val','/home/dave/code/zx-speccy/zxbasic/asmparse.py',765),
('asm -> LD A COMMA expr','asm',4,'p_LD_reg_val','/home/dave/code/zx-speccy/zxbasic/asmparse.py',766),
('asm -> LD SP COMMA expr','asm',4,'p_LD_reg_val','/home/dave/code/zx-speccy/zxbasic/asmparse.py',767),
('asm -> LD reg8i COMMA expr','asm',4,'p_LD_reg_val','/home/dave/code/zx-speccy/zxbasic/asmparse.py',768),
('asm -> LD reg8_I COMMA expr','asm',4,'p_LD_regI_val','/home/dave/code/zx-speccy/zxbasic/asmparse.py',778),
('asm -> JP reg8_hl','asm',2,'p_JP_hl','/home/dave/code/zx-speccy/zxbasic/asmparse.py',785),
('asm -> JP LP reg16i RP','asm',4,'p_JP_hl','/home/dave/code/zx-speccy/zxbasic/asmparse.py',786),
('asm -> SBC A COMMA reg8','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',798),
('asm -> SBC A COMMA reg8i','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',799),
('asm -> SBC A COMMA A','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',800),
('asm -> SBC A COMMA reg8_hl','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',801),
('asm -> SBC HL COMMA SP','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',802),
('asm -> SBC HL COMMA BC','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',803),
('asm -> SBC HL COMMA DE','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',804),
('asm -> SBC HL COMMA HL','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',805),
('asm -> ADD A COMMA reg8','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',806),
('asm -> ADD A COMMA reg8i','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',807),
('asm -> ADD A COMMA A','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',808),
('asm -> ADD A COMMA reg8_hl','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',809),
('asm -> ADC A COMMA reg8','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',810),
('asm -> ADC A COMMA reg8i','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',811),
('asm -> ADC A COMMA A','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',812),
('asm -> ADC A COMMA reg8_hl','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',813),
('asm -> ADD HL COMMA BC','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',814),
('asm -> ADD HL COMMA DE','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',815),
('asm -> ADD HL COMMA HL','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',816),
('asm -> ADD HL COMMA SP','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',817),
('asm -> ADC HL COMMA BC','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',818),
('asm -> ADC HL COMMA DE','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',819),
('asm -> ADC HL COMMA HL','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',820),
('asm -> ADC HL COMMA SP','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',821),
('asm -> ADD reg16i COMMA BC','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',822),
('asm -> ADD reg16i COMMA DE','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',823),
('asm -> ADD reg16i COMMA HL','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',824),
('asm -> ADD reg16i COMMA SP','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',825),
('asm -> ADD reg16i COMMA reg16i','asm',4,'p_SBCADD','/home/dave/code/zx-speccy/zxbasic/asmparse.py',826),
('asm -> SBC A COMMA expr','asm',4,'p_arith_A_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',832),
('asm -> SBC A COMMA pexpr','asm',4,'p_arith_A_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',833),
('asm -> ADD A COMMA expr','asm',4,'p_arith_A_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',834),
('asm -> ADD A COMMA pexpr','asm',4,'p_arith_A_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',835),
('asm -> ADC A COMMA expr','asm',4,'p_arith_A_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',836),
('asm -> ADC A COMMA pexpr','asm',4,'p_arith_A_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',837),
('asm -> SBC A COMMA reg8_I','asm',4,'p_arith_A_regI','/home/dave/code/zx-speccy/zxbasic/asmparse.py',843),
('asm -> ADD A COMMA reg8_I','asm',4,'p_arith_A_regI','/home/dave/code/zx-speccy/zxbasic/asmparse.py',844),
('asm -> ADC A COMMA reg8_I','asm',4,'p_arith_A_regI','/home/dave/code/zx-speccy/zxbasic/asmparse.py',845),
('asm -> bitwiseop reg8','asm',2,'p_bitwiseop_reg','/home/dave/code/zx-speccy/zxbasic/asmparse.py',851),
('asm -> bitwiseop reg8i','asm',2,'p_bitwiseop_reg','/home/dave/code/zx-speccy/zxbasic/asmparse.py',852),
('asm -> bitwiseop A','asm',2,'p_bitwiseop_reg','/home/dave/code/zx-speccy/zxbasic/asmparse.py',853),
('asm -> bitwiseop reg8_hl','asm',2,'p_bitwiseop_reg','/home/dave/code/zx-speccy/zxbasic/asmparse.py',854),
('asm -> bitwiseop reg8_I','asm',2,'p_bitwiseop_regI','/home/dave/code/zx-speccy/zxbasic/asmparse.py',860),
('asm -> bitwiseop expr','asm',2,'p_bitwise_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',866),
('asm -> bitwiseop pexpr','asm',2,'p_bitwise_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',867),
('bitwiseop -> OR','bitwiseop',1,'p_bitwise','/home/dave/code/zx-speccy/zxbasic/asmparse.py',873),
('bitwiseop -> AND','bitwiseop',1,'p_bitwise','/home/dave/code/zx-speccy/zxbasic/asmparse.py',874),
('bitwiseop -> XOR','bitwiseop',1,'p_bitwise','/home/dave/code/zx-speccy/zxbasic/asmparse.py',875),
('bitwiseop -> SUB','bitwiseop',1,'p_bitwise','/home/dave/code/zx-speccy/zxbasic/asmparse.py',876),
('bitwiseop -> CP','bitwiseop',1,'p_bitwise','/home/dave/code/zx-speccy/zxbasic/asmparse.py',877),
('asm -> PUSH AF','asm',2,'p_PUSH_POP','/home/dave/code/zx-speccy/zxbasic/asmparse.py',883),
('asm -> PUSH reg16','asm',2,'p_PUSH_POP','/home/dave/code/zx-speccy/zxbasic/asmparse.py',884),
('asm -> POP AF','asm',2,'p_PUSH_POP','/home/dave/code/zx-speccy/zxbasic/asmparse.py',885),
('asm -> POP reg16','asm',2,'p_PUSH_POP','/home/dave/code/zx-speccy/zxbasic/asmparse.py',886),
('asm -> LD pexpr COMMA A','asm',4,'p_LD_addr_reg','/home/dave/code/zx-speccy/zxbasic/asmparse.py',892),
('asm -> LD pexpr COMMA reg16','asm',4,'p_LD_addr_reg','/home/dave/code/zx-speccy/zxbasic/asmparse.py',893),
('asm -> LD pexpr COMMA SP','asm',4,'p_LD_addr_reg','/home/dave/code/zx-speccy/zxbasic/asmparse.py',894),
('asm -> LD A COMMA pexpr','asm',4,'p_LD_reg_addr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',900),
('asm -> LD reg16 COMMA pexpr','asm',4,'p_LD_reg_addr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',901),
('asm -> LD SP COMMA pexpr','asm',4,'p_LD_reg_addr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',902),
('asm -> rotation reg8','asm',2,'p_ROTATE','/home/dave/code/zx-speccy/zxbasic/asmparse.py',908),
('asm -> rotation reg8_hl','asm',2,'p_ROTATE','/home/dave/code/zx-speccy/zxbasic/asmparse.py',909),
('asm -> rotation A','asm',2,'p_ROTATE','/home/dave/code/zx-speccy/zxbasic/asmparse.py',910),
('asm -> rotation reg8_I','asm',2,'p_ROTATE_ix','/home/dave/code/zx-speccy/zxbasic/asmparse.py',916),
('asm -> bitop expr COMMA A','asm',4,'p_BIT','/home/dave/code/zx-speccy/zxbasic/asmparse.py',922),
('asm -> bitop pexpr COMMA A','asm',4,'p_BIT','/home/dave/code/zx-speccy/zxbasic/asmparse.py',923),
('asm -> bitop expr COMMA reg8','asm',4,'p_BIT','/home/dave/code/zx-speccy/zxbasic/asmparse.py',924),
('asm -> bitop pexpr COMMA reg8','asm',4,'p_BIT','/home/dave/code/zx-speccy/zxbasic/asmparse.py',925),
('asm -> bitop expr COMMA reg8_hl','asm',4,'p_BIT','/home/dave/code/zx-speccy/zxbasic/asmparse.py',926),
('asm -> bitop pexpr COMMA reg8_hl','asm',4,'p_BIT','/home/dave/code/zx-speccy/zxbasic/asmparse.py',927),
('asm -> bitop expr COMMA reg8_I','asm',4,'p_BIT_ix','/home/dave/code/zx-speccy/zxbasic/asmparse.py',937),
('asm -> bitop pexpr COMMA reg8_I','asm',4,'p_BIT_ix','/home/dave/code/zx-speccy/zxbasic/asmparse.py',938),
('bitop -> BIT','bitop',1,'p_bitop','/home/dave/code/zx-speccy/zxbasic/asmparse.py',948),
('bitop -> RES','bitop',1,'p_bitop','/home/dave/code/zx-speccy/zxbasic/asmparse.py',949),
('bitop -> SET','bitop',1,'p_bitop','/home/dave/code/zx-speccy/zxbasic/asmparse.py',950),
('rotation -> RR','rotation',1,'p_rotation','/home/dave/code/zx-speccy/zxbasic/asmparse.py',956),
('rotation -> RL','rotation',1,'p_rotation','/home/dave/code/zx-speccy/zxbasic/asmparse.py',957),
('rotation -> RRC','rotation',1,'p_rotation','/home/dave/code/zx-speccy/zxbasic/asmparse.py',958),
('rotation -> RLC','rotation',1,'p_rotation','/home/dave/code/zx-speccy/zxbasic/asmparse.py',959),
('rotation -> SLA','rotation',1,'p_rotation','/home/dave/code/zx-speccy/zxbasic/asmparse.py',960),
('rotation -> SLL','rotation',1,'p_rotation','/home/dave/code/zx-speccy/zxbasic/asmparse.py',961),
('rotation -> SRA','rotation',1,'p_rotation','/home/dave/code/zx-speccy/zxbasic/asmparse.py',962),
('rotation -> SRL','rotation',1,'p_rotation','/home/dave/code/zx-speccy/zxbasic/asmparse.py',963),
('inc_reg -> SP','inc_reg',1,'p_reg_inc','/home/dave/code/zx-speccy/zxbasic/asmparse.py',969),
('inc_reg -> reg8','inc_reg',1,'p_reg_inc','/home/dave/code/zx-speccy/zxbasic/asmparse.py',970),
('inc_reg -> reg16','inc_reg',1,'p_reg_inc','/home/dave/code/zx-speccy/zxbasic/asmparse.py',971),
('inc_reg -> reg8_hl','inc_reg',1,'p_reg_inc','/home/dave/code/zx-speccy/zxbasic/asmparse.py',972),
('inc_reg -> A','inc_reg',1,'p_reg_inc','/home/dave/code/zx-speccy/zxbasic/asmparse.py',973),
('inc_reg -> reg8i','inc_reg',1,'p_reg_inc','/home/dave/code/zx-speccy/zxbasic/asmparse.py',974),
('reg8 -> H','reg8',1,'p_reg8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',980),
('reg8 -> L','reg8',1,'p_reg8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',981),
('reg8 -> regBCDE','reg8',1,'p_reg8','/home/dave/code/zx-speccy/zxbasic/asmparse.py',982),
('regBCDE -> B','regBCDE',1,'p_regBCDE','/home/dave/code/zx-speccy/zxbasic/asmparse.py',988),
('regBCDE -> C','regBCDE',1,'p_regBCDE','/home/dave/code/zx-speccy/zxbasic/asmparse.py',989),
('regBCDE -> D','regBCDE',1,'p_regBCDE','/home/dave/code/zx-speccy/zxbasic/asmparse.py',990),
('regBCDE -> E','regBCDE',1,'p_regBCDE','/home/dave/code/zx-speccy/zxbasic/asmparse.py',991),
('reg8i -> IXH','reg8i',1,'p_reg8i','/home/dave/code/zx-speccy/zxbasic/asmparse.py',997),
('reg8i -> IXL','reg8i',1,'p_reg8i','/home/dave/code/zx-speccy/zxbasic/asmparse.py',998),
('reg8i -> IYH','reg8i',1,'p_reg8i','/home/dave/code/zx-speccy/zxbasic/asmparse.py',999),
('reg8i -> IYL','reg8i',1,'p_reg8i','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1000),
('reg16 -> BC','reg16',1,'p_reg16','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1006),
('reg16 -> DE','reg16',1,'p_reg16','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1007),
('reg16 -> HL','reg16',1,'p_reg16','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1008),
('reg16 -> reg16i','reg16',1,'p_reg16','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1009),
('reg16i -> IX','reg16i',1,'p_reg16i','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1015),
('reg16i -> IY','reg16i',1,'p_reg16i','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1016),
('asm -> JP jp_flags COMMA expr','asm',4,'p_jp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1022),
('asm -> JP jp_flags COMMA pexpr','asm',4,'p_jp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1023),
('asm -> CALL jp_flags COMMA expr','asm',4,'p_jp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1024),
('asm -> CALL jp_flags COMMA pexpr','asm',4,'p_jp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1025),
('asm -> RET jp_flags','asm',2,'p_ret','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1031),
('jp_flags -> P','jp_flags',1,'p_jpflags_other','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1037),
('jp_flags -> M','jp_flags',1,'p_jpflags_other','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1038),
('jp_flags -> PO','jp_flags',1,'p_jpflags_other','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1039),
('jp_flags -> PE','jp_flags',1,'p_jpflags_other','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1040),
('jp_flags -> jr_flags','jp_flags',1,'p_jpflags_other','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1041),
('asm -> JR jr_flags COMMA expr','asm',4,'p_jr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1047),
('asm -> JR jr_flags COMMA pexpr','asm',4,'p_jr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1048),
('jr_flags -> Z','jr_flags',1,'p_jr_flags','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1055),
('jr_flags -> C','jr_flags',1,'p_jr_flags','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1056),
('jr_flags -> NZ','jr_flags',1,'p_jr_flags','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1057),
('jr_flags -> NC','jr_flags',1,'p_jr_flags','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1058),
('asm -> JP expr','asm',2,'p_jrjp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1064),
('asm -> JR expr','asm',2,'p_jrjp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1065),
('asm -> CALL expr','asm',2,'p_jrjp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1066),
('asm -> DJNZ expr','asm',2,'p_jrjp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1067),
('asm -> JP pexpr','asm',2,'p_jrjp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1068),
('asm -> JR pexpr','asm',2,'p_jrjp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1069),
('asm -> CALL pexpr','asm',2,'p_jrjp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1070),
('asm -> DJNZ pexpr','asm',2,'p_jrjp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1071),
('asm -> RST expr','asm',2,'p_rst','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1083),
('asm -> IM expr','asm',2,'p_im','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1094),
('asm -> IN A COMMA LP C RP','asm',6,'p_in','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1104),
('asm -> IN reg8 COMMA LP C RP','asm',6,'p_in','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1105),
('asm -> OUT LP C RP COMMA A','asm',6,'p_out','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1111),
('asm -> OUT LP C RP COMMA reg8','asm',6,'p_out','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1112),
('asm -> IN A COMMA pexpr','asm',4,'p_in_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1118),
('asm -> OUT pexpr COMMA A','asm',4,'p_out_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1124),
('asm -> NOP','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1130),
('asm -> EXX','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1131),
('asm -> CCF','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1132),
('asm -> SCF','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1133),
('asm -> LDIR','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1134),
('asm -> LDI','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1135),
('asm -> LDDR','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1136),
('asm -> LDD','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1137),
('asm -> CPIR','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1138),
('asm -> CPI','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1139),
('asm -> CPDR','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1140),
('asm -> CPD','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1141),
('asm -> DAA','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1142),
('asm -> NEG','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1143),
('asm -> CPL','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1144),
('asm -> HALT','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1145),
('asm -> EI','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1146),
('asm -> DI','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1147),
('asm -> OUTD','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1148),
('asm -> OUTI','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1149),
('asm -> OTDR','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1150),
('asm -> OTIR','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1151),
('asm -> IND','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1152),
('asm -> INI','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1153),
('asm -> INDR','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1154),
('asm -> INIR','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1155),
('asm -> RET','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1156),
('asm -> RETI','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1157),
('asm -> RETN','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1158),
('asm -> RLA','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1159),
('asm -> RLCA','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1160),
('asm -> RRA','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1161),
('asm -> RRCA','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1162),
('asm -> RLD','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1163),
('asm -> RRD','asm',1,'p_single','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1164),
('expr -> expr PLUS expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1170),
('expr -> expr MINUS expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1171),
('expr -> expr MUL expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1172),
('expr -> expr DIV expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1173),
('expr -> expr POW expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1174),
('expr -> pexpr PLUS expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1175),
('expr -> pexpr MINUS expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1176),
('expr -> pexpr MUL expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1177),
('expr -> pexpr DIV expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1178),
('expr -> pexpr POW expr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1179),
('expr -> expr PLUS pexpr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1180),
('expr -> expr MINUS pexpr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1181),
('expr -> expr MUL pexpr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1182),
('expr -> expr DIV pexpr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1183),
('expr -> expr POW pexpr','expr',3,'p_expr_div_expr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1184),
('pexpr -> LP expr RP','pexpr',3,'p_expr_lprp','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1190),
('expr -> MINUS expr','expr',2,'p_expr_uminus','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1196),
('expr -> INTEGER','expr',1,'p_expr_int','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1202),
('expr -> ID','expr',1,'p_expr_label','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1208),
('expr -> ADDR','expr',1,'p_expr_addr','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1214),
('asm -> preproc_line','asm',1,'p_preprocessor_line','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1221),
('preproc_line -> _LINE INTEGER','preproc_line',2,'p_preprocessor_line_line','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1227),
('preproc_line -> _LINE INTEGER STRING','preproc_line',3,'p_preprocessor_line_line_file','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1233),
('preproc_line -> _INIT ID','preproc_line',2,'p_preproc_line_init','/home/dave/code/zx-speccy/zxbasic/asmparse.py',1242),
]