OpenCores
URL https://opencores.org/ocsvn/wb_z80/wb_z80/trunk

Subversion Repositories wb_z80

[/] [wb_z80/] [trunk/] [asm/] [BJS80TST.ASM] - Blame information for rev 25

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 25 bporcella
; bjp   modified to assemble on as80.
2
; minor mods to account for changes in interrupt structure  and I/O
3
; all such are flagged with my initials.....
4 20 bporcella
;
5 25 bporcella
; The origional code used operators <   and  >  on symbols to extract the
6
; lower and higher bytes respectively.   It appears that as80 has no equivaltent.
7
; I have hand coded such ---- hopefully correctly.
8
; This is only a significant issue with such constructs as 
9
; My solution forces the stack to remain in its present location.
10
;
11
; WARNING   If you must move the stack  --   check comments and fix code for my kludges
12
;
13 20 bporcella
;z80 simulator test routine
14
;total error count is left in a at end of test routine
15
;
16
 
17
                code
18
                org     #0000
19
;
20
rst_0000:       jp      rst_0000_1
21
;
22
                org     #0008
23
;
24
rst_0008:       ld      a,2
25
                ret
26
;
27
                org     #0010
28
;
29
rst_0010:       ld      a,3
30
                ret
31
;
32
                org     #0018
33
;
34
rst_0018:       ld      a,4
35
                ret
36
;
37
                org     #0020
38
;
39
rst_0020:       ld      a,5
40
                ret
41
;
42
                org     #0028
43
;
44
rst_0028:       ld      a,6
45
                ret
46
;
47
                org     #0030
48
;
49
rst_0030:       ld      a,7
50
                ret
51
;
52
                org     #0038
53
;
54
rst_0038:       ld      a,8
55
                ret
56
;
57
                code
58
;
59
 
60
fail:           db      'failed'
61
pass:           db      'passed'
62
message_addr:   equ     #be58
63
in_port:        equ     #ff
64 25 bporcella
out_port:       equ     #10
65 20 bporcella
;
66
data_55:        equ     #55
67
data_7f:        equ     #7f
68
data_80:        equ     #80
69
data_aa:        equ     #aa
70
data_ff:        equ     #ff
71
;
72
data_1234:      equ     #1234
73
data_55aa:      equ     #55aa
74
data_7fff:      equ     #7fff
75
data_8000:      equ     #8000
76
data_aa55:      equ     #aa55
77
data_ffff:      equ     #ffff
78
;
79 25 bporcella
;inc_error_cnt  macro        ;bjp   change for initial test to halt on error
80 20 bporcella
;               ld      hl,error_cnt
81
;               inc     (hl)
82
;               endm
83
inc_error_cnt   macro
84
                halt
85
                endm
86
 
87
;
88
passed          macro
89
                push    bc
90
                ld      bc,(pass)
91
                ld      (message_addr),bc
92
                ld      bc,(pass+2)
93
                ld      (message_addr+2),bc
94
                ld      bc,(pass+4)
95
                ld      (message_addr+4),bc
96
                pop     bc
97
                endm
98
;
99
failed          macro
100
                push    bc
101
                ld      bc,(fail)
102
                ld      (message_addr),bc
103
                ld      bc,(fail+2)
104
                ld      (message_addr+2),bc
105
                ld      bc,(fail+4)
106
                ld      (message_addr+4),bc
107
                pop     bc
108
                endm
109
;
110
;
111
 
112
start:          xor     a
113
                ld      (pass_count),a
114
                ld      hl,error_cnt
115
                ld      (hl),a                  ;clear error count
116
nop_1:          nop
117
                nop
118
ld_167:         ld      a,data_55
119
                cp      data_55
120
                jr      z,ld_1
121
                inc_error_cnt
122
ld_1:           ld      b,data_7f
123
                ld      a,data_7f
124
                cp      b
125
                jr      z,ld_2
126
                inc_error_cnt
127
ld_2:           ld      c,data_80
128
                ld      a,data_80
129
                cp      c
130
                jr      z,ld_3
131
                inc_error_cnt
132
ld_3:           ld      d,data_aa
133
                ld      a,data_aa
134
                cp      d
135
                jr      z,ld_4
136
                inc_error_cnt
137
ld_4:           ld      e,data_55
138
                ld      a,data_55
139
                cp      e
140
                jr      z,ld_5
141
                inc_error_cnt
142
ld_5:           ld      h,data_7f
143
                ld      a,data_7f
144
                cp      h
145
                jr      z,ld_6
146
                inc_error_cnt
147
ld_6:           ld      l,data_80
148
                ld      a,data_80
149
                cp      l
150
                jr      z,ld_7
151
                inc_error_cnt
152
ld_7:           ld      a,data_55
153
                ld      b,a
154
                cp      b
155
                jr      z,ld_8
156
                inc_error_cnt
157
ld_8:           ld      c,b
158
                cp      c
159
                jr      z,ld_9
160
                inc_error_cnt
161
ld_9:           ld      d,c
162
                cp      d
163
                jr      z,ld_10
164
                inc_error_cnt
165
ld_10:          ld      e,d
166
                cp      e
167
                jr      z,ld_11
168
                inc_error_cnt
169
ld_11:          ld      h,e
170
                cp      h
171
                jr      z,ld_12
172
                inc_error_cnt
173
ld_12:          ld      l,h
174
                cp      l
175
                jr      z,ld_13
176
                inc_error_cnt
177
ld_13:          ld      l,data_80
178
                ld      a,l
179
                cp      l
180
                jr      z,ld_14
181
                inc_error_cnt
182
ld_14:          ld      h,l
183
                cp      h
184
                jr      z,ld_15
185
                inc_error_cnt
186
ld_15:          ld      e,h
187
                cp      e
188
                jr      z,ld_16
189
                inc_error_cnt
190
ld_16:          ld      d,e
191
                cp      d
192
                jr      z,ld_17
193
                inc_error_cnt
194
ld_17:          ld      c,d
195
                cp      c
196
                jr      z,ld_18
197
                inc_error_cnt
198
ld_18:          ld      b,c
199
                cp      b
200
                jr      z,ld_19
201
                inc_error_cnt
202
ld_19:          ld      hl,var1
203
                ld      a,(hl)
204
                cp      data_ff
205
                jr      z,ld_20
206
                inc_error_cnt
207
ld_20:          ld      hl,var2
208
                ld      a,data_55
209
                ld      b,(hl)
210
                cp      b
211
                jr      z,ld_21
212
                inc_error_cnt
213
ld_21:          ld      hl,var1
214
                ld      c,(hl)
215
                ld      a,(hl)
216
                cp      c
217
                jr      z,ld_22
218
                inc_error_cnt
219
ld_22:          ld      hl,var2
220
                ld      d,(hl)
221
                ld      a,(hl)
222
                cp      d
223
                jr      z,ld_23
224
                inc_error_cnt
225
ld_23:          ld      hl,var1
226
                ld      e,(hl)
227
                ld      a,(hl)
228
                cp      e
229
                jr      z,ld_24
230
                inc_error_cnt
231
ld_24:          ld      hl,var2
232
                ld      a,(hl)
233
                ld      h,(hl)
234
                cp      h
235
                jr      z,ld_25
236
                inc_error_cnt
237
ld_25:          ld      hl,var1
238
                ld      a,(hl)
239
                ld      l,(hl)
240
                cp      l
241
                jr      z,ld_26
242
                inc_error_cnt
243
ld_26:          ld      ix,var3
244
                ld      a,(ix-2)
245
                cp      data_ff
246
                jr      z,ld_27
247
                inc_error_cnt
248
ld_27:          ld      a,(ix+2)
249
                cp      data_7f
250
                jr      z,ld_28
251
                inc_error_cnt
252
ld_28:          ld      a,(ix-1)
253
                ld      b,(ix-1)
254
                cp      b
255
                jr      z,ld_29
256
                inc_error_cnt
257
ld_29:          cp      data_55
258
                jr      z,ld_30
259
                inc_error_cnt
260
ld_30:          ld      a,(ix+1)
261
                ld      c,(ix+1)
262
                cp      c
263
                jr      z,ld_31
264
                inc_error_cnt
265
ld_31:          cp      data_aa
266
                jr      z,ld_32
267
                inc_error_cnt
268
ld_32:          ld      d,(ix-2)
269
                ld      a,(ix-2)
270
                cp      d
271
                jr      z,ld_33
272
                inc_error_cnt
273
ld_33:          cp      data_ff
274
                jr      z,ld_34
275
                inc_error_cnt
276
ld_34:          ld      e,(ix+2)
277
                ld      a,(ix+2)
278
                cp      e
279
                jr      z,ld_35
280
                inc_error_cnt
281
ld_35:          cp      data_7f
282
                jr      z,ld_36
283
                inc_error_cnt
284
ld_36:          ld      h,(ix+0)
285
                ld      a,(ix+0)
286
                cp      h
287
                jr      z,ld_37
288
                inc_error_cnt
289
ld_37:          cp      data_80
290
                jr      z,ld_38
291
                inc_error_cnt
292
ld_38:          ld      l,(ix-1)
293
                ld      a,(ix-1)
294
                cp      l
295
                jr      z,ld_39
296
                inc_error_cnt
297
ld_39:          cp      data_55
298
                jr      z,ld_40
299
                inc_error_cnt
300
ld_40:          ld      iy,var3
301
                ld      a,(iy-2)
302
                cp      data_ff
303
                jr      z,ld_41
304
                inc_error_cnt
305
ld_41:          ld      a,(iy+2)
306
                cp      data_7f
307
                jr      z,ld_42
308
                inc_error_cnt
309
ld_42:          ld      b,(iy-1)
310
                ld      a,(iy-1)
311
                cp      b
312
                jr      z,ld_43
313
                inc_error_cnt
314
ld_43:          cp      data_55
315
                jr      z,ld_44
316
                inc_error_cnt
317
ld_44:          ld      c,(iy+1)
318
                ld      a,(iy+1)
319
                cp      c
320
                jr      z,ld_45
321
                inc_error_cnt
322
ld_45:          cp      data_aa
323
                jr      z,ld_46
324
                inc_error_cnt
325
ld_46:          ld      d,(iy-2)
326
                ld      a,(iy-2)
327
                cp      d
328
                jr      z,ld_47
329
                inc_error_cnt
330
ld_47:          cp      data_ff
331
                jr      z,ld_48
332
                inc_error_cnt
333
ld_48:          ld      e,(iy+2)
334
                ld      a,(iy+2)
335
                cp      e
336
                jr      z,ld_49
337
                inc_error_cnt
338
ld_49:          cp      data_7f
339
                jr      z,ld_50
340
                inc_error_cnt
341
ld_50:          ld      h,(iy+0)
342
                ld      a,(iy+0)
343
                cp      h
344
                jr      z,ld_51
345
                inc_error_cnt
346
ld_51:          cp      data_80
347
                jr      z,ld_52
348
                inc_error_cnt
349
ld_52:          ld      l,(iy-2)
350
                ld      a,(iy-2)
351
                cp      l
352
                jr      z,ld_53
353
                inc_error_cnt
354
ld_53:          cp      data_ff
355
                jr      z,ld_54
356
                inc_error_cnt
357
ld_54:          ld      hl,t_var1
358
                ld      a,data_aa+1
359
                ld      (hl),a
360
                ld      b,(hl)
361
                cp      b
362
                jr      z,ld_55
363
                inc_error_cnt
364
ld_55:          cp      data_aa+1
365
                jr      z,ld_56
366
                inc_error_cnt
367
ld_56:          ld      b,data_80+1
368
                ld      (hl),b
369
                ld      a,(hl)
370
                cp      b
371
                jr      z,ld_57
372
                inc_error_cnt
373
ld_57:          cp      data_80+1
374
                jr      z,ld_58
375
                inc_error_cnt
376
ld_58:          ld      c,data_55-1
377
                ld      (hl),c
378
                ld      a,(hl)
379
                cp      c
380
                jr      z,ld_59
381
                inc_error_cnt
382
ld_59:          cp      data_55-1
383
                jr      z,ld_60
384
                inc_error_cnt
385
ld_60:          ld      d,data_ff-1
386
                ld      (hl),d
387
                ld      a,(hl)
388
                cp      d
389
                jr      z,ld_61
390
                inc_error_cnt
391
ld_61:          cp      data_ff-1
392
                jr      z,ld_62
393
                inc_error_cnt
394
ld_62:          ld      e,data_55+1
395
                ld      (hl),e
396
                ld      a,(hl)
397
                cp      e
398
                jr      z,ld_63
399
                inc_error_cnt
400
ld_63:          cp      data_55+1
401
                jr      z,ld_64
402
                inc_error_cnt
403
ld_64:          ld      (hl),h
404
                ld      a,(hl)
405
                cp      h
406
                jr      z,ld_65
407
                inc_error_cnt
408
ld_65:          cp      #70             ;bjp  guess  >t_var1
409
                jr      z,ld_66
410
                inc_error_cnt
411
ld_66:          ld      (hl),l
412
                ld      a,(hl)
413
                cp      l
414
                jr      z,ld_67
415
                inc_error_cnt
416
ld_67:          cp      a, #00          ;bjp  guess 
417
                jr      z,ld_68
418
                inc_error_cnt
419
ld_68:          ld      ix,t_var3
420
                ld      a,data_55
421
                ld      (ix-2),a
422
                ld      a,0
423
                ld      a,(ix-2)
424
                cp      data_55
425
                jr      z,ld_69
426
                inc_error_cnt
427
ld_69:          ld      a,data_80
428
                ld      (ix+2),a
429
                ld      a,0
430
                ld      a,(ix+2)
431
                cp      data_80
432
                jr      z,ld_70
433
                inc_error_cnt
434
ld_70:          ld      b,data_7f
435
                ld      (ix-1),b
436
                ld      a,(ix-1)
437
                cp      b
438
                jr      z,ld_71
439
                inc_error_cnt
440
ld_71:          cp      data_7f
441
                jr      z,ld_72
442
                inc_error_cnt
443
ld_72:          ld      c,data_aa
444
                ld      (ix+1),c
445
                ld      a,(ix+1)
446
                cp      c
447
                jr      z,ld_73
448
                inc_error_cnt
449
ld_73:          cp      data_aa
450
                jr      z,ld_74
451
                inc_error_cnt
452
ld_74:          ld      d,data_80
453
                ld      (ix+0),d
454
                ld      a,(ix+0)
455
                cp      d
456
                jr      z,ld_75
457
                inc_error_cnt
458
ld_75:          cp      data_80
459
                jr      z,ld_76
460
                inc_error_cnt
461
ld_76:          ld      e,data_55+2
462
                ld      (ix-2),e
463
                ld      a,(ix-2)
464
                cp      e
465
                jr      z,ld_77
466
                inc_error_cnt
467
ld_77:          cp      data_55+2
468
                jr      z,ld_78
469
                inc_error_cnt
470
ld_78:          ld      h,data_aa-2
471
                ld      (ix+2),h
472
                ld      a,(ix+2)
473
                cp      h
474
                jr      z,ld_79
475
                inc_error_cnt
476
ld_79:          cp      data_aa-2
477
                jr      z,ld_80
478
                inc_error_cnt
479
ld_80:          ld      l,data_aa+2
480
                ld      (ix-1),l
481
                ld      a,(ix-1)
482
                cp      l
483
                jr      z,ld_81
484
                inc_error_cnt
485
ld_81:          cp      data_aa+2
486
                jr      z,ld_82
487
                inc_error_cnt
488
ld_82:          ld      iy,t_var3
489
                ld      a,data_ff
490
                ld      (iy-2),a
491
                ld      a,0
492
                ld      a,(iy-2)
493
                cp      data_ff
494
                jr      z,ld_83
495
                inc_error_cnt
496
ld_83:          ld      a,data_7f
497
                ld      (iy+2),a
498
                ld      a,0
499
                ld      a,(iy+2)
500
                cp      data_7f
501
                jr      z,ld_84
502
                inc_error_cnt
503
ld_84:          ld      b,data_55
504
                ld      (iy-1),b
505
                ld      a,(iy-1)
506
                cp      b
507
                jr      z,ld_85
508
                inc_error_cnt
509
ld_85:          cp      data_55
510
                jr      z,ld_86
511
                inc_error_cnt
512
ld_86:          ld      c,data_aa
513
                ld      (iy+1),c
514
                ld      a,(iy+1)
515
                cp      c
516
                jr      z,ld_87
517
                inc_error_cnt
518
ld_87:          cp      data_aa
519
                jr      z,ld_88
520
                inc_error_cnt
521
ld_88:          ld      d,data_80
522
                ld      (iy+0),d
523
                ld      a,(iy+0)
524
                cp      d
525
                jr      z,ld_89
526
                inc_error_cnt
527
ld_89:          cp      data_80
528
                jr      z,ld_90
529
                inc_error_cnt
530
ld_90:          ld      e,data_ff-2
531
                ld      (iy-2),e
532
                ld      a,(iy-2)
533
                cp      e
534
                jr      z,ld_91
535
                inc_error_cnt
536
ld_91:          cp      data_ff-2
537
                jr      z,ld_92
538
                inc_error_cnt
539
ld_92:          ld      h,data_7f-3
540
                ld      (iy+2),h
541
                ld      a,(iy+2)
542
                cp      h
543
                jr      z,ld_93
544
                inc_error_cnt
545
ld_93:          cp      data_7f-3
546
                jr      z,ld_94
547
                inc_error_cnt
548
ld_94:          ld      l,data_55-5
549
                ld      (iy-1),l
550
                ld      a,(iy-1)
551
                cp      l
552
                jr      z,ld_95
553
                inc_error_cnt
554
ld_95:          cp      data_55-5
555
                jr      z,ld_96
556
                inc_error_cnt
557
ld_96:          ld      hl,t_var1
558
                ld      (hl),data_80+10
559
                ld      a,(hl)
560
                cp      data_80+10
561
                jr      z,ld_97
562
                inc_error_cnt
563
ld_97:          ld      ix,t_var3
564
                ld      (ix-2),data_55-10
565
                ld      a,(ix-2)
566
                cp      data_55-10
567
                jr      z,ld_98
568
                inc_error_cnt
569
ld_98:          ld      (ix+2),data_55+10
570
                ld      a,(ix+2)
571
                cp      data_55+10
572
                jr      z,ld_99
573
                inc_error_cnt
574
ld_99:          ld      iy,t_var2
575
                ld      (iy-1),data_80+17
576
                ld      a,(iy-1)
577
                cp      data_80+17
578
                jr      z,ld_100
579
                inc_error_cnt
580
ld_100:         ld      (iy+1),data_80-17
581
                ld      a,(iy+1)
582
                cp      data_80-17
583
                jr      z,ld_101
584
                inc_error_cnt
585
ld_101:         ld      hl,t_var5
586
                ld      bc,t_var5
587
                ld      (hl),data_aa-10
588
                ld      a,(bc)
589
                cp      data_aa-10
590
                jr      z,ld_102
591
                inc_error_cnt
592
ld_102:         ld      hl,t_var3
593
                ld      de,t_var3
594
                ld      (hl),data_aa+10
595
                ld      a,(de)
596
                cp      data_aa+10
597
                jr      z,ld_103
598
                inc_error_cnt
599
ld_103:         ld      hl,t_var2
600
                ld      (hl),data_7f-25
601
                ld      a,(t_var2)
602
                cp      data_7f-25
603
                jr      z,ld_104
604
                inc_error_cnt
605
ld_104:         ld      hl,t_var4
606
                ld      bc,t_var4
607
                ld      a,data_55-20
608
                ld      (bc),a
609
                ld      b,(hl)
610
                cp      b
611
                jr      z,ld_105
612
                inc_error_cnt
613
ld_105:         ld      a,b
614
                cp      data_55-20
615
                jr      z,ld_106
616
                inc_error_cnt
617
ld_106:         ld      hl,t_var5
618
                ld      de,t_var5
619
                ld      a,data_55+20
620
                ld      (de),a
621
                ld      c,(hl)
622
                cp      c
623
                jr      z,ld_107
624
                inc_error_cnt
625
ld_107:         ld      a,c
626
                cp      data_55+20
627
                jr      z,ld_108
628
                inc_error_cnt
629
ld_108:         ld      hl,t_var4
630
                ld      a,data_ff-24
631
                ld      (t_var4),a
632
                ld      e,(hl)
633
                cp      e
634
                jr      z,ld_109
635
                inc_error_cnt
636
ld_109:         ld      a,e
637
                cp      data_ff-24
638
                jr      z,ld_110
639
                inc_error_cnt
640
ld_110:         ld      a,data_55
641
                ld      i,a
642
                ld      a,0
643
                ld      a,i
644
                jr      nz,ld_111
645
                inc_error_cnt
646
ld_111:         jp      p,ld_112
647
                inc_error_cnt
648
ld_112:         cp      data_55
649
                jr      z,ld_113
650
                inc_error_cnt
651
ld_113:         ld      a,data_80
652
                ld      i,a
653
                ld      a,0
654
                ld      a,i
655
                jr      nz,ld_114
656
                inc_error_cnt
657
ld_114:         jp      m,ld_115
658
                inc_error_cnt
659
ld_115:         cp      data_80
660
                jr      z,ld_116
661
                inc_error_cnt
662
ld_116:         ld      a,0
663
                ld      i,a
664
                ld      a,data_55
665
                ld      a,i
666 25 bporcella
                jr      z,ld_125
667 20 bporcella
                inc_error_cnt
668 25 bporcella
;   refresh register not implemented
669
;   test for ie ?
670
;ld_117:                ld      a,data_55
671
;               ld      r,a
672
;               ld      a,0
673
;               ld      a,r
674
;               jp      p,ld_118
675
;               inc_error_cnt
676
;ld_118:                jr      nz,ld_119
677
;               inc_error_cnt
678
;ld_119:                ld      a,data_ff
679
;               ld      r,a
680
;               ld      a,0
681
;               ld      a,r
682
;               jp      m,ld_120
683
;               inc_error_cnt
684
;ld_120:                ld      a,4                     ;totally sequence dependent
685
;               ld      r,a
686
;               ld      a,data_55
687
;               ld      a,r
688
;               jr      z,ld_121
689
;               inc_error_cnt
690
;ld_121:                ei                              ;set iff2
691
;               ld      a,i
692
;               jp      pe,ld_122               ;iff2 was set
693
;               inc_error_cnt
694
;ld_122:                di                              ;clear iff2
695
;               ld      a,i
696
;               jp      po,ld_123               ;iff2 was cleared
697
;               inc_error_cnt
698
;ld_123:                ei                              ;set iff2
699
;               ld      a,r
700
;               jp      pe,ld_124               ;iff2 was set
701
;               inc_error_cnt
702
;ld_124:                di                              ;clear iff2
703
;               ld      a,r
704
;               jp      po,ld_125               ;iff2 was cleared
705
;               inc_error_cnt
706
;
707 20 bporcella
ld_125:         ld      bc,data_1234
708
                ld      a, #12                  ;bjp  guess >data_1234
709
                cp      b
710
                jr      z,ld_126
711
                inc_error_cnt
712
ld_126:         ld      a, #34                  ;bjp  guess  
713
                cp      c
714
                jr      z,ld_127
715
                inc_error_cnt
716
ld_127:         ld      de,data_55aa
717
                ld      a,data_55
718
                cp      d
719
                jr      z,ld_128
720
                inc_error_cnt
721
ld_128:         ld      a,data_aa
722
                cp      e
723
                jr      z,ld_129
724
                inc_error_cnt
725
ld_129:         ld      hl,data_7fff
726
                ld      a,data_7f
727
                cp      h
728
                jr      z,ld_130
729
                inc_error_cnt
730
ld_130:         ld      a,data_ff
731
                cp      l
732
                jr      z,ld_131
733
                inc_error_cnt
734
ld_131:         ld      sp,data_aa55
735
                ld      hl,0
736
                add     hl,sp
737
                ld      a,data_aa
738
                cp      h
739
                jr      z,ld_132
740
                inc_error_cnt
741
ld_132:         ld      a,data_55
742
                cp      l
743
                jr      z,ld_133
744
                inc_error_cnt
745
ld_133:         ld      ix,data_ffff
746
                ld      hl,0
747
                ld      sp,ix
748
                add     hl,sp
749
                ld      a,data_ff
750
                cp      h
751
                jr      z,ld_134
752
                inc_error_cnt
753
ld_134:         cp      l
754
                jr      z,ld_135
755
                inc_error_cnt
756
ld_135:         ld      iy,data_1234
757
                ld      hl,0
758
                ld      sp,iy
759
                add     hl,sp
760
                ld      a,#12      ;bjp was >data_1234
761
                cp      h
762
                jr      z,ld_136
763
                inc_error_cnt
764
ld_136:         ld      a,#34      ;bjp was >data_1234
765
                cp      l
766
                jr      z,ld_137
767
                inc_error_cnt
768
ld_137:         ld      hl,(w_var2)
769
                ld      a,data_55
770
                cp      h
771
                jr      z,ld_138
772
                inc_error_cnt
773
ld_138:         ld      a,data_aa
774
                cp      l
775
                jr      z,ld_139
776
                inc_error_cnt
777
ld_139:         ld      bc,(w_var1)
778
                ld      a,#12      ;bjp was >data_1234
779
                cp      b
780
                jr      z,ld_140
781
                inc_error_cnt
782
ld_140:         ld      a,#34      ;bjp was >data_1234
783
                cp      c
784
                jr      z,ld_141
785
                inc_error_cnt
786
ld_141:         ld      de,(w_var3)
787
                ld      a,data_7f
788
                cp      d
789
                jr      z,ld_142
790
                inc_error_cnt
791
ld_142:         ld      a,data_ff
792
                cp      e
793
                jr      z,ld_143
794
                inc_error_cnt
795
ld_143:         ld      hl,(w_var4)
796
                ld      a,data_80
797
                cp      h
798
                jr      z,ld_144
799
                inc_error_cnt
800
ld_144:         ld      a,0
801
                cp      l
802
                jr      z,ld_145
803
                inc_error_cnt
804
ld_145:         ld      sp,(w_var5)
805
                ld      hl,0
806
                add     hl,sp
807
                ld      a,data_aa
808
                cp      h
809
                jr      z,ld_146
810
                inc_error_cnt
811
ld_146:         ld      a,data_55
812
                cp      l
813
                jr      z,ld_147
814
                inc_error_cnt
815
ld_147:         ld      ix,(w_var6)
816
                ld      hl,0
817
                ld      sp,ix
818
                add     hl,sp
819
                ld      a,data_ff
820
                cp      h
821
                jr      z,ld_148
822
                inc_error_cnt
823
ld_148:         cp      l
824
                jr      z,ld_149
825
                inc_error_cnt
826
ld_149:         ld      iy,(w_var1)
827
                ld      hl,0
828
                ld      sp,iy
829
                add     hl,sp
830
                ld      a,#12      ;bjp was >data_1234
831
                cp      h
832
                jr      z,ld_150
833
                inc_error_cnt
834
ld_150:         ld      a,#34      ;bjp was >data_1234
835
                cp      l
836
                jr      z,ld_151
837
                inc_error_cnt
838
ld_151:         ld      hl,data_1234
839
                ld      (tw_var1),hl
840
                ld      bc,(tw_var1)
841
                ld      a,#12      ;bjp was >data_1234
842
                cp      b
843
                jr      z,ld_152
844
                inc_error_cnt
845
ld_152:         ld      a,#34      ;bjp was >data_1234
846
                cp      c
847
                jr      z,ld_153
848
                inc_error_cnt
849
ld_153:         ld      bc,data_55aa
850
                ld      (tw_var2),bc
851
                ld      hl,(tw_var2)
852
                ld      a,data_55
853
                cp      h
854
                jr      z,ld_154
855
                inc_error_cnt
856
ld_154:         ld      a,data_aa
857
                cp      l
858
                jr      z,ld_155
859
                inc_error_cnt
860
ld_155:         ld      de,data_7fff
861
                ld      (tw_var3),de
862
                ld      hl,(tw_var3)
863
                ld      a,data_7f
864
                cp      h
865
                jr      z,ld_156
866
                inc_error_cnt
867
ld_156:         ld      a,data_ff
868
                cp      l
869
                jr      z,ld_157
870
                inc_error_cnt
871
ld_157:         ld      hl,data_8000
872
                ld      (tw_var4),hl
873
                ld      bc,(tw_var4)
874
                ld      a,data_80
875
                cp      b
876
                jr      z,ld_158
877
                inc_error_cnt
878
ld_158:         ld      a,0
879
                cp      c
880
                jr      z,ld_159
881
                inc_error_cnt
882
ld_159:         ld      sp,data_aa55
883
                ld      (tw_var5),sp
884
                ld      hl,(tw_var5)
885
                ld      a,data_aa
886
                cp      h
887
                jr      z,ld_160
888
                inc_error_cnt
889
ld_160:         ld      a,data_55
890
                cp      l
891
                jr      z,ld_161
892
                inc_error_cnt
893
ld_161:         ld      ix,data_ffff
894
                ld      (tw_var6),ix
895
                ld      hl,(tw_var6)
896
                ld      a,data_ff
897
                cp      h
898
                jr      z,ld_162
899
                inc_error_cnt
900
ld_162:         cp      l
901
                jr      z,ld_163
902
                inc_error_cnt
903
ld_163:         ld      iy,data_1234
904
                ld      (tw_var7),iy
905
                ld      hl,(tw_var7)
906
                ld      a,#12      ;bjp was >data_1234
907
                cp      h
908
                jr      z,ld_164
909
                inc_error_cnt
910
ld_164:         ld      a,#34      ;bjp was >data_1234
911
                cp      l
912
                jr      z,ld_165
913
                inc_error_cnt
914
ld_165:         ld      hl,data_55aa
915
                ld      sp,hl
916
                ld      hl,0
917
                add     hl,sp
918
                ld      a,data_55
919
                cp      h
920
                jr      z,ld_166
921
                inc_error_cnt
922
ld_166:         ld      a,data_aa
923
                cp      l
924
                jr      z,push_0
925
                inc_error_cnt
926
push_0:         ld      sp,stack_end
927
                ld      bc,data_1234
928
                push    bc
929
                ld      bc,0
930
                pop     bc
931
                ld      a,#12      ;bjp was >data_1234
932
                cp      b
933
                jr      z,push_1
934
                inc_error_cnt
935
push_1:         ld      a,#34      ;bjp was >data_1234
936
                cp      c
937
                jr      z,push_2
938
                inc_error_cnt
939
push_2:         ld      de,data_55aa
940
                push    de
941
                ld      de,0
942
                pop     de
943
                ld      a,data_55
944
                cp      d
945
                jr      z,push_3
946
                inc_error_cnt
947
push_3:         ld      a,data_aa
948
                cp      e
949
                jr      z,push_4
950
                inc_error_cnt
951
push_4:         ld      hl,data_7fff
952
                push    hl
953
                ld      hl,0
954
                pop     hl
955
                ld      a,data_7f
956
                cp      h
957
                jr      z,push_5
958
                inc_error_cnt
959
push_5:         ld      a,data_ff
960
                cp      l
961
                jr      z,push_6
962
                inc_error_cnt
963
push_6:         ld      a,data_80
964
                push    af                      ;f depends on previous compare
965
                ld      hl,0
966
                pop     hl
967
                cp      h
968
                jr      z,push_7
969
                inc_error_cnt
970
push_7:         ld      a,l
971
                cp      #42
972
                jr      z,push_8
973
push_8:         ld      h,data_55
974
                ld      l,data_80+#41
975
                ld      a,0
976
                push    hl
977
                pop     af
978
                jp      m,push_9
979
                inc_error_cnt
980
push_9:         jr      z,push_10
981
                inc_error_cnt
982
push_10:        jr      c,push_11
983
                inc_error_cnt
984
push_11:        cp      data_55
985
                jr      z,push_12
986
                inc_error_cnt
987
push_12:        ld      ix,data_aa55
988
                ld      bc,0
989
                push    ix
990
                pop     bc
991
                ld      a,data_aa
992
                cp      b
993
                jr      z,push_13
994
                inc_error_cnt
995
push_13:        ld      a,data_55
996
                cp      c
997
                jr      z,push_14
998
                inc_error_cnt
999
push_14:        ld      iy,data_7fff
1000
                ld      de,0
1001
                push    iy
1002
                pop     de
1003
                ld      a,data_7f
1004
                cp      d
1005
                jr      z,push_15
1006
                inc_error_cnt
1007
push_15:        ld      a,data_ff
1008
                cp      e
1009
                jr      z,push_16
1010
                inc_error_cnt
1011
push_16:        ld      de,data_1234
1012
                ld      ix,0
1013
                ld      hl,0
1014
                push    de
1015
                pop     ix
1016
                ld      sp,ix
1017
                add     hl,sp
1018
                ld      a,#12      ;bjp was >data_1234
1019
                cp      h
1020
                jr      z,push_17
1021
                inc_error_cnt
1022
push_17:        ld      a,#34      ;bjp was >data_1234
1023
                cp      l
1024
                jr      z,push_18
1025
                inc_error_cnt
1026
push_18:        ld      sp,stack_end
1027
                ld      bc,data_55aa
1028
                ld      iy,0
1029
                ld      hl,0
1030
                push    bc
1031
                pop     iy
1032
                ld      sp,iy
1033
                add     hl,sp
1034
                ld      a,data_55
1035
                cp      h
1036
                jr      z,push_19
1037
                inc_error_cnt
1038
push_19:        ld      a,data_aa
1039
                cp      l
1040
                jr      z,push_20
1041
                inc_error_cnt
1042
push_20:        ld      sp,stack_end
1043
ex_0:           ld      de,data_1234
1044
                ld      hl,data_ffff
1045
                ex      de,hl
1046
                ld      a,data_ff
1047
                cp      d
1048
                jr      z,ex_1
1049
                inc_error_cnt
1050
ex_1:           cp      e
1051
                jr      z,ex_2
1052
                inc_error_cnt
1053
ex_2:           ld      a,#12      ;bjp was >data_1234
1054
                cp      h
1055
                jr      z,ex_3
1056
                inc_error_cnt
1057
ex_3:           ld      a,#34      ;bjp was >data_1234
1058
                cp      l
1059
                jr      z,ex_4
1060
                inc_error_cnt
1061
ex_4:           ld      h,0
1062
                ld      l,0
1063
                push    hl
1064
                pop     af
1065
                ex      af,af'
1066
                ld      h,data_7f
1067
                ld      l,data_80+#41
1068
                push    hl
1069
                pop     af
1070
                ex      af,af'
1071
                cp      0
1072
                jr      z,ex_5
1073
                inc_error_cnt
1074
ex_5:           ex      af,af'
1075
                jp      m,ex_6
1076
                inc_error_cnt
1077
ex_6:           jr      z,ex_7
1078
                inc_error_cnt
1079
ex_7:           cp      data_7f
1080
                jr      z,ex_8
1081
                inc_error_cnt
1082
ex_8:           ld      hl,0
1083
                ld      bc,0
1084
                ld      de,0
1085
                exx
1086
                ld      hl,data_1234
1087
                ld      bc,data_7fff
1088
                ld      de,data_aa55
1089
                exx
1090
                ld      a,0
1091
                cp      h
1092
                jr      z,ex_9
1093
                inc_error_cnt
1094
ex_9:           cp      l
1095
                jr      z,ex_10
1096
                inc_error_cnt
1097
ex_10:          cp      d
1098
                jr      z,ex_11
1099
                inc_error_cnt
1100
ex_11:          cp      e
1101
                jr      z,ex_12
1102
                inc_error_cnt
1103
ex_12:          cp      b
1104
                jr      z,ex_13
1105
                inc_error_cnt
1106
ex_13:          cp      c
1107
                jr      z,ex_14
1108
                inc_error_cnt
1109
ex_14:          exx
1110
                ld      a,#12      ;bjp was >data_1234
1111
                cp      h
1112
                jr      z,ex_15
1113
                inc_error_cnt
1114
ex_15:          ld      a,#34      ;bjp was >data_1234
1115
                cp      l
1116
                jr      z,ex_16
1117
                inc_error_cnt
1118
ex_16:          ld      a,data_aa
1119
                cp      d
1120
                jr      z,ex_17
1121
                inc_error_cnt
1122
ex_17:          ld      a,data_55
1123
                cp      e
1124
                jr      z,ex_18
1125
                inc_error_cnt
1126
ex_18:          ld      a,data_7f
1127
                cp      b
1128
                jr      z,ex_19
1129
                inc_error_cnt
1130
ex_19:          ld      a,data_ff
1131
                cp      c
1132
                jr      z,ex_20
1133
                inc_error_cnt
1134
ex_20:          ld      bc,data_55aa
1135
                ld      hl,data_7fff
1136
                push    bc
1137
                ex      (sp),hl
1138
                pop     bc
1139
                ld      a,data_7f
1140
                cp      b
1141
                jr      z,ex_21
1142
                inc_error_cnt
1143
ex_21:          ld      a,data_ff
1144
                cp      c
1145
                jr      z,ex_22
1146
                inc_error_cnt
1147
ex_22:          ld      a,data_55
1148
                cp      h
1149
                jr      z,ex_23
1150
                inc_error_cnt
1151
ex_23:          ld      a,data_aa
1152
                cp      l
1153
                jr      z,ex_24
1154
                inc_error_cnt
1155
ex_24:          ld      bc,data_ffff
1156
                ld      ix,data_8000
1157
                ld      hl,0
1158
                push    bc
1159
                ex      (sp),ix
1160
                pop     bc
1161
                ld      sp,ix
1162
                add     hl,sp
1163
                ld      a,data_80
1164
                cp      b
1165
                jr      z,ex_25
1166
                inc_error_cnt
1167
ex_25:          ld      a,0
1168
                cp      c
1169
                jr      z,ex_26
1170
                inc_error_cnt
1171
ex_26:          ld      a,data_ff
1172
                cp      h
1173
                jr      z,ex_27
1174
                inc_error_cnt
1175
ex_27:          cp      l
1176
                jr      z,ex_28
1177
                inc_error_cnt
1178
ex_28:          ld      sp,stack_end
1179
                ld      bc,data_1234
1180
                ld      iy,data_7fff
1181
                ld      hl,0
1182
                push    bc
1183
                ex      (sp),iy
1184
                pop     bc
1185
                ld      sp,iy
1186
                add     hl,sp
1187
                ld      a,data_7f
1188
                cp      b
1189
                jr      z,ex_29
1190
                inc_error_cnt
1191
ex_29:          ld      a,data_ff
1192
                cp      c
1193
                jr      z,ex_30
1194
                inc_error_cnt
1195
ex_30:          ld      a,#12      ;bjp was >data_1234
1196
                cp      h
1197
                jr      z,ex_31
1198
                inc_error_cnt
1199
ex_31:          ld      a,#34      ;bjp was >data_1234
1200
                cp      l
1201
                jr      z,add_0
1202
                inc_error_cnt
1203
add_0:          ld      a,0
1204
                ld      b,data_7f
1205
                add     a,b
1206
                cp      data_7f
1207
                jr      z,add_1
1208
                inc_error_cnt
1209
add_1:          ld      a,0
1210
                ld      b,0
1211
                add     a,b
1212
                jr      z,add_2
1213
                inc_error_cnt
1214
add_2:          ld      b,data_55
1215
                add     a,b
1216
                jr      nz,add_3
1217
                inc_error_cnt
1218
add_3:          cp      data_55
1219
                jr      z,add_4
1220
                inc_error_cnt
1221
add_4:          ld      a,data_ff
1222
                ld      b,1
1223
                add     a,b
1224
                jr      c,add_5
1225
                inc_error_cnt
1226
add_5:          add     a,b
1227
                jr      nc,add_6
1228
                inc_error_cnt
1229
add_6:          ld      a,data_ff
1230
                ld      b,0
1231
                add     a,b
1232
                jp      m,add_7
1233
                inc_error_cnt
1234
add_7:          ld      b,1
1235
                add     a,b
1236
                jp      p,add_8
1237
                inc_error_cnt
1238
add_8:          ld      a,data_7f
1239
                ld      b,1
1240
                add     a,b
1241
                jp      pe,add_9
1242
                inc_error_cnt
1243
add_9:          add     a,b
1244
                jp      po,add_10
1245
                inc_error_cnt
1246
add_10:         ld      a,data_55
1247
                ld      c,2
1248
                add     a,c
1249
                cp      data_55+2
1250
                jr      z,add_11
1251
                inc_error_cnt
1252
add_11:         ld      a,data_80
1253
                add     a,c
1254
                cp      data_80+2
1255
                jr      z,add_12
1256
                inc_error_cnt
1257
add_12:         ld      a,data_aa
1258
                ld      d,data_55
1259
                add     a,d
1260
                cp      data_aa+data_55
1261
                jr      z,add_13
1262
                inc_error_cnt
1263
add_13:         ld      a,data_aa
1264
                ld      e,2
1265
                add     a,e
1266
                cp      data_aa+2
1267
                jr      z,add_14
1268
                inc_error_cnt
1269
add_14:         ld      a,data_55
1270
                ld      h,24
1271
                add     a,h
1272
                cp      data_55+24
1273
                jr      z,add_15
1274
                inc_error_cnt
1275
add_15:         ld      a,data_7f-10
1276
                ld      l,10
1277
                add     a,l
1278
                cp      data_7f
1279
                jr      z,add_16
1280
                inc_error_cnt
1281
add_16:         ld      a,1
1282
                add     a,data_7f
1283
                jp      pe,add_17
1284
                inc_error_cnt
1285
add_17:         jp      m,add_18
1286
                inc_error_cnt
1287
add_18:         jr      nz,add_19
1288
                inc_error_cnt
1289
add_19:         cp      data_80
1290
                jr      z,add_20
1291
                inc_error_cnt
1292
add_20:         ld      a,data_55
1293
                add     a,1
1294
                jp      po,add_21
1295
                inc_error_cnt
1296
add_21:         jp      p,add_22
1297
                inc_error_cnt
1298
add_22:         jr      nc,add_23
1299
                inc_error_cnt
1300
add_23:         cp      data_55+1
1301
                jr      z,add_24
1302
                inc_error_cnt
1303
add_24:         ld      a,data_ff
1304
                add     a,1
1305
                jr      c,add_25
1306
                inc_error_cnt
1307
add_25:         jr      z,add_26
1308
                inc_error_cnt
1309
add_26:         add     a,1
1310
                jr      nc,add_27
1311
                inc_error_cnt
1312
add_27:         jr      nz,add_28
1313
                inc_error_cnt
1314
add_28:         cp      1
1315
                jr      z,add_29
1316
                inc_error_cnt
1317
add_29:         ld      hl,var2
1318
                ld      a,2
1319
                add     a,(hl)
1320
                jp      po,add_30
1321
                inc_error_cnt
1322
add_30:         jp      p,add_31
1323
                inc_error_cnt
1324
add_31:         jr      nz,add_32
1325
                inc_error_cnt
1326
add_32:         jr      nc,add_33
1327
                inc_error_cnt
1328
add_33:         cp      data_55+2
1329
                jr      z,add_34
1330
                inc_error_cnt
1331
add_34:         ld      hl,var1
1332
                ld      a,1
1333
                add     a,(hl)
1334
                jr      c,add_35
1335
                inc_error_cnt
1336
add_35:         jr      z,add_36
1337
                inc_error_cnt
1338
add_36:         ld      hl,var5
1339
                ld      a,1
1340
                add     a,(hl)
1341
                jp      m,add_37
1342
                inc_error_cnt
1343
add_37:         jp      pe,add_38
1344
                inc_error_cnt
1345
add_38:         cp      data_80
1346
                jr      z,add_39
1347
                inc_error_cnt
1348
add_39:         ld      ix,var3
1349
                ld      a,1
1350
                add     a,(ix-1)
1351
                jp      po,add_40
1352
                inc_error_cnt
1353
add_40:         jp      p,add_41
1354
                inc_error_cnt
1355
add_41:         jr      nz,add_42
1356
                inc_error_cnt
1357
add_42:         jr      nc,add_43
1358
                inc_error_cnt
1359
add_43:         cp      data_55+1
1360
                jr      z,add_44
1361
                inc_error_cnt
1362
add_44:         ld      a,1
1363
                add     a,(ix+2)
1364
                jp      pe,add_45
1365
                inc_error_cnt
1366
add_45:         jp      m,add_46
1367
                inc_error_cnt
1368
add_46:         cp      data_80
1369
                jr      z,add_47
1370
                inc_error_cnt
1371
add_47:         ld      a,1
1372
                add     a,(ix-2)
1373
                jr      c,add_48
1374
                inc_error_cnt
1375
add_48:         jr      z,add_49
1376
                inc_error_cnt
1377
add_49:         add     a,1
1378
                jr      nc,add_50
1379
                inc_error_cnt
1380
add_50:         jr      nz,add_51
1381
                inc_error_cnt
1382
add_51:         cp      1
1383
                jr      z,add_52
1384
                inc_error_cnt
1385
add_52:         ld      iy,var3
1386
                ld      a,10
1387
                add     a,(iy-1)
1388
                jp      po,add_53
1389
                inc_error_cnt
1390
add_53:         jp      p,add_54
1391
                inc_error_cnt
1392
add_54:         jr      nz,add_55
1393
                inc_error_cnt
1394
add_55:         jr      nc,add_56
1395
                inc_error_cnt
1396
add_56:         cp      data_55+10
1397
                jr      z,add_57
1398
                inc_error_cnt
1399
add_57:         ld      a,1
1400
                add     a,(iy+2)
1401
                jp      pe,add_58
1402
                inc_error_cnt
1403
add_58:         jp      m,add_59
1404
                inc_error_cnt
1405
add_59:         add     a,1
1406
                jp      po,add_60
1407
                inc_error_cnt
1408
add_60:         cp      data_80+1
1409
                jr      z,add_61
1410
                inc_error_cnt
1411
add_61:         ld      a,1
1412
                add     a,(iy-2)
1413
                jr      z,add_62
1414
                inc_error_cnt
1415
add_62:         jr      c,add_63
1416
                inc_error_cnt
1417
add_63:         add     a,1
1418
                jr      nc,add_64
1419
                inc_error_cnt
1420
add_64:         jr      nz,add_65
1421
                inc_error_cnt
1422
add_65:         cp      1
1423
                jr      z,add_66
1424
                inc_error_cnt
1425
add_66:         ld      a,data_ff
1426
                add     a,data_80
1427
                jp      p,add_67
1428
                inc_error_cnt
1429
add_67:         jp      pe,add_68
1430
                inc_error_cnt
1431
add_68:         jr      c,add_69
1432
                inc_error_cnt
1433
add_69:         add     a,1
1434
                jp      pe,add_70
1435
                inc_error_cnt
1436
add_70:         jp      m,add_71
1437
                inc_error_cnt
1438
add_71:         jr      nc,add_72
1439
                inc_error_cnt
1440
add_72:         add     a,1
1441
                jp      po,add_73
1442
                inc_error_cnt
1443
add_73:         cp      data_80+1
1444
                jr      z,adc_0
1445
                inc_error_cnt
1446 25 bporcella
adc_0:          ld      a,0                 ;clear cry
1447 20 bporcella
                add     a,0
1448
                ld      b,data_7f
1449 25 bporcella
                adc     a,b                  ;a=7f cry=0
1450 20 bporcella
                jp      p,adc_1
1451
                inc_error_cnt
1452
adc_1:          jp      po,adc_2
1453
                inc_error_cnt
1454
adc_2:          jr      nc,adc_3
1455
                inc_error_cnt
1456
adc_3:          jr      nz,adc_4
1457
                inc_error_cnt
1458
adc_4:          ld      b,1
1459 25 bporcella
                adc     a,b                     ;a=80 cry=0
1460
                jp      pe,adc_5                ;jp  ofl
1461 20 bporcella
                inc_error_cnt
1462
adc_5:          jp      m,adc_6
1463
                inc_error_cnt
1464
adc_6:          cp      data_80
1465 25 bporcella
                jr      z,adc_7                 ;z=0  ofl=0 cry=0 (borrow)
1466 20 bporcella
                inc_error_cnt
1467
adc_7:          ld      a,data_ff
1468
                ld      b,1
1469 25 bporcella
                adc     a,b                      ;ff+1+0
1470 20 bporcella
                jr      c,adc_8
1471
                inc_error_cnt
1472
adc_8:          jr      z,adc_9
1473
                inc_error_cnt
1474
adc_9:          adc     a,b
1475
                jr      nc,adc_10
1476
                inc_error_cnt
1477
adc_10:         jr      nz,adc_11
1478
                inc_error_cnt
1479
adc_11:         cp      2
1480
                jr      z,adc_12
1481
                inc_error_cnt
1482
adc_12:         ld      a,data_ff
1483
                ld      c,0
1484
                adc     a,c
1485
                jp      m,adc_13
1486
                inc_error_cnt
1487
adc_13:         jr      nc,adc_14
1488
                inc_error_cnt
1489
adc_14:         ld      c,2
1490
                adc     a,c
1491
                jp      p,adc_15
1492
                inc_error_cnt
1493
adc_15:         jr      c,adc_16
1494
                inc_error_cnt
1495
adc_16:         ld      c,0
1496
                adc     a,c
1497
                cp      2
1498
                jr      z,adc_17
1499
                inc_error_cnt
1500
adc_17:         ld      a,data_ff
1501
                ld      d,1
1502
                adc     a,d
1503
                jr      c,adc_18
1504
                inc_error_cnt
1505
adc_18:         ld      d,0
1506
                adc     a,d
1507
                jr      nc,adc_19
1508
                inc_error_cnt
1509
adc_19:         cp      1
1510
                jr      z,adc_20
1511
                inc_error_cnt
1512
adc_20:         ld      a,data_aa
1513
                ld      e,data_7f
1514
                adc     a,e
1515
                jr      c,adc_21
1516
                inc_error_cnt
1517
adc_21:         ld      e,#2b
1518
                adc     a,e
1519
                cp      data_55
1520
                jr      z,adc_22
1521
                inc_error_cnt
1522
adc_22:         ld      a,data_ff
1523
                ld      h,1
1524
                adc     a,h
1525
                jr      c,adc_23
1526
                inc_error_cnt
1527
adc_23:         adc     a,h
1528
                cp      2
1529
                jr      z,adc_24
1530
                inc_error_cnt
1531
adc_24:         ld      a,data_ff
1532
                ld      l,1
1533
                adc     a,l
1534
                jr      c,adc_25
1535
                inc_error_cnt
1536
adc_25:         adc     a,l
1537
                cp      2
1538
                jr      z,adc_26
1539
                inc_error_cnt
1540
adc_26:         ld      a,0
1541
                adc     a,data_7f
1542
                jp      po,adc_27
1543
                inc_error_cnt
1544
adc_27:         jp      p,adc_28
1545
                inc_error_cnt
1546
adc_28:         jr      nc,adc_29
1547
                inc_error_cnt
1548
adc_29:         jr      nz,adc_30
1549
                inc_error_cnt
1550
adc_30:         adc     a,1
1551
                jp      pe,adc_31
1552
                inc_error_cnt
1553
adc_31:         jp      m,adc_32
1554
                inc_error_cnt
1555
adc_32:         cp      data_80
1556
                jr      z,adc_33
1557
                inc_error_cnt
1558
adc_33:         ld      a,data_ff
1559
                adc     a,1
1560
                jr      c,adc_34
1561
                inc_error_cnt
1562
adc_34:         jr      z,adc_35
1563
                inc_error_cnt
1564
adc_35:         adc     a,1
1565
                jr      nc,adc_36
1566
                inc_error_cnt
1567
adc_36:         jr      nz,adc_37
1568
                inc_error_cnt
1569
adc_37:         cp      2
1570
                jr      z,adc_38
1571
                inc_error_cnt
1572
adc_38:         ld      hl,var5
1573
                ld      a,0
1574
                adc     a,(hl)
1575
                jp      p,adc_39
1576
                inc_error_cnt
1577
adc_39:         jp      po,adc_40
1578
                inc_error_cnt
1579
adc_40:         jr      nz,adc_41
1580
                inc_error_cnt
1581
adc_41:         jr      nc,adc_42
1582
                inc_error_cnt
1583
adc_42:         ld      a,1
1584
                adc     a,(hl)
1585
                jp      m,adc_43
1586
                inc_error_cnt
1587
adc_43:         jp      pe,adc_44
1588
                inc_error_cnt
1589
adc_44:         cp      data_80
1590
                jr      z,adc_45
1591
                inc_error_cnt
1592
adc_45:         ld      hl,var1
1593
                ld      a,1
1594
                adc     a,(hl)
1595
                jr      z,adc_46
1596
                inc_error_cnt
1597
adc_46:         jr      c,adc_47
1598
                inc_error_cnt
1599
adc_47:         ld      hl,var2
1600
                adc     a,(hl)
1601
                jr      nc,adc_48
1602
                inc_error_cnt
1603
adc_48:         jr      nz,adc_49
1604
                inc_error_cnt
1605
adc_49:         cp      data_55+1
1606
                jr      z,adc_50
1607
                inc_error_cnt
1608
adc_50:         ld      ix,var3
1609
                ld      a,0
1610
                adc     a,(ix+2)
1611
                jp      p,adc_51
1612
                inc_error_cnt
1613
adc_51:         jp      po,adc_52
1614
                inc_error_cnt
1615
adc_52:         jr      nc,adc_53
1616
                inc_error_cnt
1617
adc_53:         jr      nz,adc_54
1618
                inc_error_cnt
1619
adc_54:         ld      a,1
1620
                adc     a,(ix+2)
1621
                jp      m,adc_55
1622
                inc_error_cnt
1623
adc_55:         jp      pe,adc_56
1624
                inc_error_cnt
1625
adc_56:         cp      data_80
1626
                jr      z,adc_57
1627
                inc_error_cnt
1628
adc_57:         ld      a,1
1629
                adc     a,(ix-2)
1630
                jr      c,adc_58
1631
                inc_error_cnt
1632
adc_58:         jr      z,adc_59
1633
                inc_error_cnt
1634
adc_59:         adc     a,(ix-1)
1635
                jr      nc,adc_60
1636
                inc_error_cnt
1637
adc_60:         jr      nz,adc_61
1638
                inc_error_cnt
1639
adc_61:         cp      data_55+1
1640
                jr      z,adc_62
1641
                inc_error_cnt
1642
adc_62:         ld      iy,var3
1643
                ld      a,0
1644
                adc     a,(ix+2)
1645
                jp      p,adc_63
1646
                inc_error_cnt
1647
adc_63:         jp      po,adc_64
1648
                inc_error_cnt
1649
adc_64:         jr      nc,adc_65
1650
                inc_error_cnt
1651
adc_65:         jr      nz,adc_66
1652
                inc_error_cnt
1653
adc_66:         ld      a,1
1654
                adc     a,(iy+2)
1655
                jp      m,adc_67
1656
                inc_error_cnt
1657
adc_67:         jp      pe,adc_68
1658
                inc_error_cnt
1659
adc_68:         cp      data_80
1660
                jr      z,adc_69
1661
                inc_error_cnt
1662
adc_69:         ld      a,1
1663
                adc     a,(iy-2)
1664
                jr      c,adc_70
1665
                inc_error_cnt
1666
adc_70:         jr      z,adc_71
1667
                inc_error_cnt
1668
adc_71:         adc     a,(iy-1)
1669
                jr      nc,adc_72
1670
                inc_error_cnt
1671
adc_72:         jr      nz,adc_73
1672
                inc_error_cnt
1673
adc_73:         cp      data_55+1
1674
                jr      z,adc_74
1675
                inc_error_cnt
1676
adc_74:         ld      a,data_ff
1677
                add     a,0
1678
                adc     a,data_80
1679
                jp      p,adc_75
1680
                inc_error_cnt
1681
adc_75:         jp      pe,adc_76
1682
                inc_error_cnt
1683
adc_76:         jr      nz,adc_77
1684
                inc_error_cnt
1685
adc_77:         adc     a,0
1686
                jp      m,adc_78
1687
                inc_error_cnt
1688
adc_78:         jp      pe,adc_79
1689
                inc_error_cnt
1690
adc_79:         adc     a,1
1691
                jp      po,adc_80
1692
                inc_error_cnt
1693
adc_80:         cp      data_80+1
1694
                jr      z,sub_0
1695
                inc_error_cnt
1696
sub_0:          ld      a,0
1697
                ld      b,1
1698
                sub     a,b
1699
                jp      m,sub_1
1700
                inc_error_cnt
1701
sub_1:          jp      po,sub_2
1702
                inc_error_cnt
1703
sub_2:          jr      c,sub_3
1704
                inc_error_cnt
1705
sub_3:          jr      nz,sub_4
1706
                inc_error_cnt
1707
sub_4:          sub     a,b
1708
                jr      nc,sub_5
1709
                inc_error_cnt
1710
sub_5:          cp      data_ff-1
1711
                jr      z,sub_6
1712
                inc_error_cnt
1713
sub_6:          ld      a,1
1714
                ld      b,0
1715
                sub     a,b
1716
                jr      nz,sub_7
1717
                inc_error_cnt
1718
sub_7:          jp      p,sub_8
1719
                inc_error_cnt
1720
sub_8:          ld      b,1
1721
                sub     a,b
1722
                jr      z,sub_9
1723
                inc_error_cnt
1724
sub_9:          sub     a,b
1725
                jp      m,sub_10
1726
                inc_error_cnt
1727
sub_10:         cp      data_ff
1728
                jr      z,sub_11
1729
                inc_error_cnt
1730
sub_11:         ld      a,data_80
1731
                ld      b,data_7f
1732
                sub     a,b
1733
                jp      pe,sub_12
1734
                inc_error_cnt
1735
sub_12:         sub     a,b
1736
                jp      po,sub_13
1737
                inc_error_cnt
1738
sub_13:         cp      data_80+2
1739
                jr      z,sub_14
1740
                inc_error_cnt
1741
sub_14:         ld      a,data_55
1742
                ld      c,data_55
1743
                sub     a,c
1744
                jr      z,sub_15
1745
                inc_error_cnt
1746
sub_15:         ld      c,1
1747
                sub     a,c
1748
                jp      m,sub_16
1749
                inc_error_cnt
1750
sub_16:         jr      c,sub_17
1751
                inc_error_cnt
1752
sub_17:         cp      data_ff
1753
                jr      z,sub_18
1754
                inc_error_cnt
1755
sub_18:         ld      a,data_55
1756
                ld      d,data_7f
1757
                sub     a,d
1758
                jr      c,sub_19
1759
                inc_error_cnt
1760
sub_19:         cp      data_55-data_7f
1761
                jr      z,sub_20
1762
                inc_error_cnt
1763
sub_20:         ld      a,0
1764
                ld      e,data_ff
1765
                sub     a,e
1766
                jr      c,sub_21
1767
                inc_error_cnt
1768
sub_21:         cp      1
1769
                jr      z,sub_22
1770
                inc_error_cnt
1771
sub_22:         ld      a,data_ff
1772
                ld      h,data_80
1773
                sub     a,h
1774
                jp      p,sub_23
1775
                inc_error_cnt
1776
sub_23:         cp      data_7f
1777
                jr      z,sub_24
1778
                inc_error_cnt
1779
sub_24:         ld      a,data_aa
1780
                ld      l,data_ff
1781
                sub     a,l
1782
                jr      c,sub_25
1783
                inc_error_cnt
1784
sub_25:         cp      data_aa+1
1785
                jr      z,sub_26
1786
                inc_error_cnt
1787
sub_26:         ld      a,data_7f
1788
                sub     a,data_ff
1789
                jp      pe,sub_27
1790
                inc_error_cnt
1791
sub_27:         jp      m,sub_28
1792
                inc_error_cnt
1793
sub_28:         sub     a,1
1794
                jp      p,sub_29
1795
                inc_error_cnt
1796
sub_29:         sub     a,1
1797
                jp      po,sub_30
1798
                inc_error_cnt
1799
sub_30:         jr      nz,sub_31
1800
                inc_error_cnt
1801
sub_31:         sub     a,data_7f-1
1802
                jr      z,sub_32
1803
                inc_error_cnt
1804
sub_32:         ld      a,0
1805
                sub     a,data_ff
1806
                jr      c,sub_33
1807
                inc_error_cnt
1808
sub_33:         sub     a,1
1809
                jr      z,sub_34
1810
                inc_error_cnt
1811
sub_34:         jr      nc,sub_35
1812
                inc_error_cnt
1813
sub_35:         ld      hl,var1
1814
                ld      a,data_7f
1815
                sub     a,(hl)
1816
                jp      m,sub_36
1817
                inc_error_cnt
1818
sub_36:         jp      pe,sub_37
1819
                inc_error_cnt
1820
sub_37:         jr      c,sub_38
1821
                inc_error_cnt
1822
sub_38:         ld      hl,var3
1823
                sub     a,(hl)
1824
                jp      p,sub_39
1825
                inc_error_cnt
1826
sub_39:         jp      po,sub_40
1827
                inc_error_cnt
1828
sub_40:         jr      nc,sub_41
1829
                inc_error_cnt
1830
sub_41          jr      z,sub_42
1831
                inc_error_cnt
1832
sub_42:         ld      hl,var2
1833
                sub     a,(hl)
1834
                jr      nz,sub_43
1835
                inc_error_cnt
1836
sub_43:         cp      data_aa+1
1837
                jr      z,sub_44
1838
                inc_error_cnt
1839
sub_44:         ld      ix,var3
1840
                ld      a,data_7f
1841
                sub     a,(ix-2)
1842
                jp      m,sub_45
1843
                inc_error_cnt
1844
sub_45:         jp      pe,sub_46
1845
                inc_error_cnt
1846
sub_46:         jr      c,sub_47
1847
                inc_error_cnt
1848
sub_47:         sub     a,(ix+0)
1849
                jp      p,sub_48
1850
                inc_error_cnt
1851
sub_48:         jp      po,sub_49
1852
                inc_error_cnt
1853
sub_49:         jr      nc,sub_50
1854
                inc_error_cnt
1855
sub_50:         jr      z,sub_51
1856
                inc_error_cnt
1857
sub_51:         sub     a,(ix+2)
1858
                jr      nz,sub_52
1859
                inc_error_cnt
1860
sub_52:         cp      data_80+1
1861
                jr      z,sub_53
1862
                inc_error_cnt
1863
sub_53:         ld      iy,var3
1864
                ld      a,data_7f
1865
                sub     a,(iy-2)
1866
                jp      m,sub_54
1867
                inc_error_cnt
1868
sub_54:         jp      pe,sub_55
1869
                inc_error_cnt
1870
sub_55:         jr      c,sub_56
1871
                inc_error_cnt
1872
sub_56:         jr      nz,sub_57
1873
                inc_error_cnt
1874
sub_57:         sub     a,(iy+0)
1875
                jp      p,sub_58
1876
                inc_error_cnt
1877
sub_58:         jp      po,sub_59
1878
                inc_error_cnt
1879
sub_59:         jr      nc,sub_60
1880
                inc_error_cnt
1881
sub_60:         jr      z,sub_61
1882
                inc_error_cnt
1883
sub_61:         sub     a,(iy+2)
1884
                jr      nz,sub_62
1885
                inc_error_cnt
1886
sub_62:         cp      data_80+1
1887
                jr      z,sbc_0
1888
                inc_error_cnt
1889
sbc_0:          ld      a,data_7f
1890
                ld      b,0
1891
                sub     a,b                     ;clear carry flag
1892
                ld      b,data_ff
1893
                sbc     a,b
1894
                jp      m,sbc_1
1895
                inc_error_cnt
1896
sbc_1:          jp      pe,sbc_2
1897
                inc_error_cnt
1898
sbc_2:          jr      c,sbc_3
1899
                inc_error_cnt
1900
sbc_3:          jr      nz,sbc_4
1901
                inc_error_cnt
1902
sbc_4:          ld      b,data_7f
1903
                sbc     a,b
1904
                jp      p,sbc_5
1905
                inc_error_cnt
1906
sbc_5:          jp      pe,sbc_6
1907
                inc_error_cnt
1908
sbc_6:          jr      nc,sbc_7
1909
                inc_error_cnt
1910
sbc_7:          jr      z,sbc_8
1911
                inc_error_cnt
1912
sbc_8:          ld      b,data_ff
1913
                sbc     a,b
1914
                jp      po,sbc_9
1915
                inc_error_cnt
1916
sbc_9:          jr      nz,sbc_10
1917
                inc_error_cnt
1918
sbc_10:         ld      b,0
1919
                sbc     a,b
1920
                jr      z,sbc_11
1921
                inc_error_cnt
1922
sbc_11:         ld      a,data_aa
1923
                ld      c,data_ff
1924
                sbc     a,c
1925
                jr      c,sbc_12
1926
                inc_error_cnt
1927
sbc_12:         ld      c,0
1928
                sbc     a,c
1929
                jr      nc,sbc_13
1930
                inc_error_cnt
1931
sbc_13:         cp      data_aa
1932
                jr      z,sbc_14
1933
                inc_error_cnt
1934
sbc_14:         ld      a,data_55
1935
                ld      d,data_ff
1936
                sbc     a,d
1937
                jr      c,sbc_15
1938
                inc_error_cnt
1939
sbc_15:         ld      d,0
1940
                sbc     a,d
1941
                jr      nc,sbc_16
1942
                inc_error_cnt
1943
sbc_16:         cp      data_55
1944
                jr      z,sbc_17
1945
                inc_error_cnt
1946
sbc_17:         ld      a,data_aa
1947
                ld      e,data_ff
1948
                sbc     a,e
1949
                jr      c,sbc_18
1950
                inc_error_cnt
1951
sbc_18:         ld      e,0
1952
                sbc     a,e
1953
                jr      nc,sbc_19
1954
                inc_error_cnt
1955
sbc_19:         cp      data_aa
1956
                jr      z,sbc_20
1957
                inc_error_cnt
1958
sbc_20:         ld      a,data_55
1959
                ld      h,data_ff
1960
                sbc     a,h
1961
                jr      c,sbc_21
1962
                inc_error_cnt
1963
sbc_21:         ld      h,0
1964
                sbc     a,h
1965
                jr      nc,sbc_22
1966
                inc_error_cnt
1967
sbc_22:         cp      data_55
1968
                jr      z,sbc_23
1969
                inc_error_cnt
1970
sbc_23:         ld      a,data_aa
1971
                ld      l,data_ff
1972
                sbc     a,l
1973
                jr      c,sbc_24
1974
                inc_error_cnt
1975
sbc_24:         ld      l,0
1976
                sbc     a,l
1977
                jr      nc,sbc_25
1978
                inc_error_cnt
1979
sbc_25:         cp      data_aa
1980
                jr      z,sbc_26
1981
                inc_error_cnt
1982
sbc_26:         ld      a,data_7f
1983
                sbc     a,data_ff
1984
                jp      m,sbc_27
1985
                inc_error_cnt
1986
sbc_27:         jp      pe,sbc_28
1987
                inc_error_cnt
1988
sbc_28:         jr      c,sbc_29
1989
                inc_error_cnt
1990
sbc_29:         jr      nz,sbc_30
1991
                inc_error_cnt
1992
sbc_30:         sbc     a,data_7f
1993
                jp      p,sbc_31
1994
                inc_error_cnt
1995
sbc_31:         jp      pe,sbc_32
1996
                inc_error_cnt
1997
sbc_32:         jr      nc,sbc_33
1998
                inc_error_cnt
1999
sbc_33:         jr      z,sbc_34
2000
                inc_error_cnt
2001
sbc_34:         sbc     a,data_ff
2002
                jr      nz,sbc_35
2003
                inc_error_cnt
2004
sbc_35:         cp      1
2005
                jr      z,sbc_36
2006
                inc_error_cnt
2007
sbc_36:         ld      hl,var1
2008
                ld      a,data_7f
2009
                sbc     a,(hl)
2010
                jp      m,sbc_37
2011
                inc_error_cnt
2012
sbc_37:         jp      pe,sbc_38
2013
                inc_error_cnt
2014
sbc_38:         jr      c,sbc_39
2015
                inc_error_cnt
2016
sbc_39:         jr      nz,sbc_40
2017
                inc_error_cnt
2018
sbc_40:         ld      hl,var5
2019
                sbc     a,(hl)
2020
                jp      p,sbc_41
2021
                inc_error_cnt
2022
sbc_41:         jp      pe,sbc_42
2023
                inc_error_cnt
2024
sbc_42:         jr      nc,sbc_43
2025
                inc_error_cnt
2026
sbc_43:         jr      z,sbc_44
2027
                inc_error_cnt
2028
sbc_44:         ld      hl,var2
2029
                sbc     a,(hl)
2030
                jr      nz,sbc_45
2031
                inc_error_cnt
2032
sbc_45:         cp      data_aa+1
2033
                jr      z,sbc_46
2034
                inc_error_cnt
2035
sbc_46:         ld      ix,var3
2036
                ld      a,data_7f
2037
                sbc     a,(ix-2)
2038
                jp      m,sbc_47
2039
                inc_error_cnt
2040
sbc_47:         jp      pe,sbc_48
2041
                inc_error_cnt
2042
sbc_48:         jr      c,sbc_49
2043
                inc_error_cnt
2044
sbc_49:         jr      nz,sbc_50
2045
                inc_error_cnt
2046
sbc_50:         sbc     a,(ix+2)
2047
                jp      p,sbc_51
2048
                inc_error_cnt
2049
sbc_51:         jp      pe,sbc_52
2050
                inc_error_cnt
2051
sbc_52:         jr      nc,sbc_53
2052
                inc_error_cnt
2053
sbc_53:         jr      z,sbc_54
2054
                inc_error_cnt
2055
sbc_54:         sbc     a,(ix-1)
2056
                jr      nz,sbc_55
2057
                inc_error_cnt
2058
sbc_55:         cp      data_aa+1
2059
                jr      z,sbc_56
2060
                inc_error_cnt
2061
sbc_56:         ld      iy,var3
2062
                ld      a,data_7f
2063
                sbc     a,(ix-2)
2064
                jp      m,sbc_57
2065
                inc_error_cnt
2066
sbc_57:         jp      pe,sbc_58
2067
                inc_error_cnt
2068
sbc_58:         jr      c,sbc_59
2069
                inc_error_cnt
2070
sbc_59:         jr      nz,sbc_60
2071
                inc_error_cnt
2072
sbc_60:         sbc     a,(ix+2)
2073
                jp      p,sbc_61
2074
                inc_error_cnt
2075
sbc_61:         jp      pe,sbc_62
2076
                inc_error_cnt
2077
sbc_62:         jr      nc,sbc_63
2078
                inc_error_cnt
2079
sbc_63:         jr      z,sbc_64
2080
                inc_error_cnt
2081
sbc_64:         sbc     a,(ix+1)
2082
                jr      nz,sbc_65
2083
                inc_error_cnt
2084
sbc_65:         cp      data_55+1
2085
                jr      z,and_0
2086
                inc_error_cnt
2087
and_0:          ld      a,data_ff
2088
                add     a,1                     ;set carry
2089
                ld      a,data_ff
2090
                ld      b,data_aa
2091
                and     a,b
2092
                jr      nc,and_1
2093
                inc_error_cnt
2094
and_1:          jp      m,and_2
2095
                inc_error_cnt
2096
and_2:          jp      pe,and_3
2097
                inc_error_cnt
2098
and_3:          jr      nz,and_4
2099
                inc_error_cnt
2100
and_4:          ld      b,data_55
2101
                and     a,b
2102
                jp      p,and_5
2103
                inc_error_cnt
2104
and_5:          jr      z,and_6
2105
                inc_error_cnt
2106
and_6:          ld      a,data_ff
2107
                ld      b,data_7f
2108
                and     a,b
2109
                jp      po,and_7
2110
                inc_error_cnt
2111
and_7:          ld      b,data_55
2112
                and     a,b
2113
                jp      pe,and_8
2114
                inc_error_cnt
2115
and_8:          ld      a,data_ff
2116
                ld      c,data_80
2117
                and     a,c
2118
                jp      m,and_9
2119
                inc_error_cnt
2120
and_9:          cp      data_80
2121
                jr      z,and_10
2122
                inc_error_cnt
2123
and_10:         ld      a,data_ff
2124
                ld      d,data_7f
2125
                and     a,d
2126
                jp      p,and_11
2127
                inc_error_cnt
2128
and_11:         cp      data_7f
2129
                jr      z,and_12
2130
                inc_error_cnt
2131
and_12:         ld      a,data_ff
2132
                ld      e,data_aa
2133
                and     a,e
2134
                jp      m,and_13
2135
                inc_error_cnt
2136
and_13:         cp      data_aa
2137
                jr      z,and_14
2138
                inc_error_cnt
2139
and_14:         ld      a,data_ff
2140
                ld      h,data_55
2141
                and     a,h
2142
                jp      p,and_15
2143
                inc_error_cnt
2144
and_15:         cp      data_55
2145
                jr      z,and_16
2146
                inc_error_cnt
2147
and_16:         ld      a,data_ff
2148
                ld      l,data_aa
2149
                and     a,l
2150
                jp      m,and_17
2151
                inc_error_cnt
2152
and_17:         cp      data_aa
2153
                jr      z,and_18
2154
                inc_error_cnt
2155
and_18:         ld      a,data_ff
2156
                and     a,data_aa
2157
                jp      m,and_19
2158
                inc_error_cnt
2159
and_19:         jr      nz,and_20
2160
                inc_error_cnt
2161
and_20:         and     a,data_55
2162
                jp      p,and_21
2163
                inc_error_cnt
2164
and_21:         jr      z,and_22
2165
                inc_error_cnt
2166
and_22:         ld      a,data_ff
2167
                and     a,data_7f
2168
                jp      po,and_23
2169
                inc_error_cnt
2170
and_23:         and     a,data_55
2171
                jp      pe,and_24
2172
                inc_error_cnt
2173
and_24:         jr      nz,and_25
2174
                inc_error_cnt
2175
and_25:         and     a,data_aa
2176
                jr      z,and_26
2177
                inc_error_cnt
2178
and_26:         ld      a,data_ff
2179
                and     a,data_aa
2180
                cp      data_aa
2181
                jr      z,and_27
2182
                inc_error_cnt
2183
and_27:         ld      hl,var4
2184
                ld      a,data_ff
2185
                and     a,(hl)
2186
                jp      m,and_28
2187
                inc_error_cnt
2188
and_28:         jr      nz,and_29
2189
                inc_error_cnt
2190
and_29:         ld      hl,var2
2191
                and     a,(hl)
2192
                jp      p,and_30
2193
                inc_error_cnt
2194
and_30:         jr      z,and_31
2195
                inc_error_cnt
2196
and_31:         ld      a,data_ff
2197
                ld      hl,var5
2198
                and     a,(hl)
2199
                jp      po,and_32
2200
                inc_error_cnt
2201
and_32:         ld      hl,var2
2202
                and     a,(hl)
2203
                jp      pe,and_33
2204
                inc_error_cnt
2205
and_33:         cp      data_55
2206
                jr      z,and_34
2207
                inc_error_cnt
2208
and_34:         ld      ix,var3
2209
                ld      a,data_ff
2210
                and     a,(ix+1)
2211
                jp      m,and_35
2212
                inc_error_cnt
2213
and_35:         jr      nz,and_36
2214
                inc_error_cnt
2215
and_36:         and     a,(ix-1)
2216
                jp      p,and_37
2217
                inc_error_cnt
2218
and_37:         jr      z,and_38
2219
                inc_error_cnt
2220
and_38:         ld      a,data_ff
2221
                and     a,(ix+2)
2222
                jp      po,and_39
2223
                inc_error_cnt
2224
and_39:         and     a,(ix-1)
2225
                jp      pe,and_40
2226
                inc_error_cnt
2227
and_40:         cp      data_55
2228
                jr      z,and_41
2229
                inc_error_cnt
2230
and_41:         ld      iy,var3
2231
                ld      a,data_ff
2232
                and     a,(iy+1)
2233
                jp      m,and_42
2234
                inc_error_cnt
2235
and_42:         jr      nz,and_43
2236
                inc_error_cnt
2237
and_43:         and     a,(iy-1)
2238
                jp      p,and_44
2239
                inc_error_cnt
2240
and_44:         jr      z,and_45
2241
                inc_error_cnt
2242
and_45:         ld      a,data_ff
2243
                and     a,(iy+2)
2244
                jp      po,and_46
2245
                inc_error_cnt
2246
and_46:         and     a,(iy-1)
2247
                jp      pe,and_47
2248
                inc_error_cnt
2249
and_47:         cp      data_55
2250
                jr      z,or_0
2251
                inc_error_cnt
2252
or_0:           ld      a,0
2253
                ld      b,data_7f
2254
                or      a,b
2255
                jp      p,or_1
2256
                inc_error_cnt
2257
or_1:           jp      po,or_2
2258
                inc_error_cnt
2259
or_2:           ld      b,data_80
2260
                or      a,b
2261
                jp      m,or_3
2262
                inc_error_cnt
2263
or_3:           jp      pe,or_4
2264
                inc_error_cnt
2265
or_4:           cp      data_ff
2266
                jr      z,or_5
2267
                inc_error_cnt
2268
or_5:           ld      a,0
2269
                ld      b,0
2270
                or      a,b
2271
                jr      z,or_6
2272
                inc_error_cnt
2273
or_6:           ld      b,data_55
2274
                or      a,b
2275
                jr      nz,or_7
2276
                inc_error_cnt
2277
or_7:           cp      data_55
2278
                jr      z,or_8
2279
                inc_error_cnt
2280
or_8:           ld      a,data_ff
2281
                add     a,1
2282
                jr      c,or_9
2283
                inc_error_cnt
2284
or_9:           ld      b,data_7f
2285
                or      a,b
2286
                jr      nc,or_10
2287
                inc_error_cnt
2288
or_10:          cp      data_7f
2289
                jr      z,or_11
2290
                inc_error_cnt
2291
or_11:          ld      a,0
2292
                ld      c,data_55
2293
                or      a,c
2294
                cp      data_55
2295
                jr      z,or_12
2296
                inc_error_cnt
2297
or_12:          ld      c,data_aa
2298
                or      a,c
2299
                cp      data_ff
2300
                jr      z,or_13
2301
                inc_error_cnt
2302
or_13:          ld      a,0
2303
                ld      d,data_aa
2304
                or      a,d
2305
                cp      data_aa
2306
                jr      z,or_14
2307
                inc_error_cnt
2308
or_14:          ld      e,data_55
2309
                or      a,e
2310
                cp      data_ff
2311
                jr      z,or_15
2312
                inc_error_cnt
2313
or_15:          ld      a,0
2314
                ld      h,data_80
2315
                or      a,h
2316
                cp      data_80
2317
                jr      z,or_16
2318
                inc_error_cnt
2319
or_16:          ld      l,data_7f
2320
                or      a,l
2321
                cp      data_ff
2322
                jr      z,or_17
2323
                inc_error_cnt
2324
or_17:          ld      a,0
2325
                or      a,data_7f
2326
                jp      p,or_18
2327
                inc_error_cnt
2328
or_18:          jp      po,or_19
2329
                inc_error_cnt
2330
or_19:          or      a,data_80
2331
                jp      m,or_20
2332
                inc_error_cnt
2333
or_20:          jp      pe,or_21
2334
                inc_error_cnt
2335
or_21:          cp      data_ff
2336
                jr      z,or_22
2337
                inc_error_cnt
2338
or_22:          ld      a,0
2339
                or      a,0
2340
                jr      z,or_23
2341
                inc_error_cnt
2342
or_23:          or      a,data_7f
2343
                jr      nz,or_24
2344
                inc_error_cnt
2345
or_24:          ld      a,data_ff
2346
                add     a,1
2347
                jr      c,or_25
2348
                inc_error_cnt
2349
or_25:          or      a,data_55
2350
                jr      nc,or_26
2351
                inc_error_cnt
2352
or_26:          cp      data_55
2353
                jr      z,or_27
2354
                inc_error_cnt
2355
or_27:          ld      hl,var5
2356
                ld      a,0
2357
                or      a,(hl)
2358
                jp      p,or_28
2359
                inc_error_cnt
2360
or_28:          jp      po,or_29
2361
                inc_error_cnt
2362
or_29:          ld      hl,var3
2363
                or      a,(hl)
2364
                jp      m,or_30
2365
                inc_error_cnt
2366
or_30:          jp      pe,or_31
2367
                inc_error_cnt
2368
or_31:          cp      data_ff
2369
                jr      z,or_32
2370
                inc_error_cnt
2371
or_32:          ld      hl,t_var1
2372
                ld      a,0
2373
                ld      (hl),a
2374
                or      a,(hl)
2375
                jr      z,or_33
2376
                inc_error_cnt
2377
or_33:          ld      hl,var2
2378
                or      a,(hl)
2379
                jr      nz,or_34
2380
                inc_error_cnt
2381
or_34:          cp      data_55
2382
                jr      z,or_35
2383
                inc_error_cnt
2384
or_35:          ld      ix,var3
2385
                ld      a,0
2386
                or      a,(ix+2)
2387
                jp      p,or_36
2388
                inc_error_cnt
2389
or_36:          jp      po,or_37
2390
                inc_error_cnt
2391
or_37:          or      a,(ix+0)
2392
                jp      m,or_38
2393
                inc_error_cnt
2394
or_38:          jp      pe,or_39
2395
                inc_error_cnt
2396
or_39:          cp      data_ff
2397
                jr      z,or_40
2398
                inc_error_cnt
2399
or_40:          ld      ix,t_var3
2400
                ld      a,0
2401
                ld      (ix-2),a
2402
                or      a,(ix-2)
2403
                jr      z,or_41
2404
                inc_error_cnt
2405
or_41:          ld      (ix+2),data_aa
2406
                or      a,(ix+2)
2407
                jr      nz,or_42
2408
                inc_error_cnt
2409
or_42:          cp      data_aa
2410
                jr      z,or_43
2411
                inc_error_cnt
2412
or_43:          ld      iy,var3
2413
                ld      a,0
2414
                or      a,(iy+2)
2415
                jp      p,or_44
2416
                inc_error_cnt
2417
or_44:          jp      po,or_45
2418
                inc_error_cnt
2419
or_45:          or      a,(iy+0)
2420
                jp      m,or_46
2421
                inc_error_cnt
2422
or_46:          jp      pe,or_47
2423
                inc_error_cnt
2424
or_47:          cp      data_ff
2425
                jr      z,or_48
2426
                inc_error_cnt
2427
or_48:          ld      iy,t_var3
2428
                ld      a,0
2429
                ld      (iy-2),a
2430
                or      a,(iy-2)
2431
                jr      z,or_49
2432
                inc_error_cnt
2433
or_49:          ld      (iy+2),data_55
2434
                or      a,(iy+2)
2435
                jr      nz,or_50
2436
                inc_error_cnt
2437
or_50:          cp      data_55
2438
                jr      z,xor_0
2439
                inc_error_cnt
2440
xor_0:          ld      a,data_ff
2441
                ld      b,data_55
2442
                xor     a,b
2443
                jp      m,xor_1
2444
                inc_error_cnt
2445
xor_1:          jp      pe,xor_2
2446
                inc_error_cnt
2447
xor_2:          ld      b,data_80
2448
                xor     a,b
2449
                jp      p,xor_3
2450
                inc_error_cnt
2451
xor_3:          jp      po,xor_4
2452
                inc_error_cnt
2453
xor_4:          cp      #2a
2454
                jr      z,xor_5
2455
                inc_error_cnt
2456
xor_5:          ld      a,data_ff
2457
                ld      b,data_ff
2458
                xor     a,b
2459
                jr      z,xor_6
2460
                inc_error_cnt
2461
xor_6:          ld      b,data_55
2462
                xor     a,b
2463
                jr      nz,xor_7
2464
                inc_error_cnt
2465
xor_7:          cp      data_55
2466
                jr      z,xor_8
2467
                inc_error_cnt
2468
xor_8:          ld      a,data_ff
2469
                add     a,1
2470
                jr      c,xor_9
2471
                inc_error_cnt
2472
xor_9:          ld      b,data_aa
2473
                xor     a,b
2474
                jr      nc,xor_10
2475
                inc_error_cnt
2476
xor_10:         cp      data_aa
2477
                jr      z,xor_11
2478
                inc_error_cnt
2479
xor_11:         ld      a,data_ff
2480
                ld      c,data_7f
2481
                xor     a,c
2482
                jp      m,xor_12
2483
                inc_error_cnt
2484
xor_12:         cp      data_80
2485
                jr      z,xor_13
2486
                inc_error_cnt
2487
xor_13:         ld      a,data_ff
2488
                ld      d,data_55
2489
                xor     a,d
2490
                jp      m,xor_14
2491
                inc_error_cnt
2492
xor_14:         cp      data_aa
2493
                jr      z,xor_15
2494
                inc_error_cnt
2495
xor_15:         ld      e,data_55
2496
                xor     a,e
2497
                jp      m,xor_16
2498
                inc_error_cnt
2499
xor_16:         cp      data_ff
2500
                jr      z,xor_17
2501
                inc_error_cnt
2502
xor_17:         ld      a,data_ff
2503
                ld      h,data_7f
2504
                xor     a,h
2505
                jp      po,xor_18
2506
                inc_error_cnt
2507
xor_18:         ld      l,data_7f
2508
                xor     a,l
2509
                jp      pe,xor_19
2510
                inc_error_cnt
2511
xor_19:         cp      data_ff
2512
                jr      z,xor_20
2513
                inc_error_cnt
2514
xor_20:         ld      a,data_ff
2515
                add     a,1
2516
                jr      c,xor_21
2517
                inc_error_cnt
2518
xor_21:         ld      b,data_7f
2519
                xor     a,b
2520
                jr      nc,xor_22
2521
                inc_error_cnt
2522
xor_22:         cp      data_7f
2523
                jr      z,xor_23
2524
                inc_error_cnt
2525
xor_23:         ld      a,data_ff
2526
                xor     a,data_7f
2527
                jp      po,xor_24
2528
                inc_error_cnt
2529
xor_24:         jp      m,xor_25
2530
                inc_error_cnt
2531
xor_25:         xor     a,data_7f
2532
                jp      pe,xor_26
2533
                inc_error_cnt
2534
xor_26:         jp      m,xor_27
2535
                inc_error_cnt
2536
xor_27:         xor     a,data_aa
2537
                jp      p,xor_28
2538
                inc_error_cnt
2539
xor_28:         cp      data_55
2540
                jr      z,xor_29
2541
                inc_error_cnt
2542
xor_29:         ld      a,data_ff
2543
                xor     a,data_ff
2544
                jr      z,xor_30
2545
                inc_error_cnt
2546
xor_30:         xor     a,data_80
2547
                jr      nz,xor_31
2548
                inc_error_cnt
2549
xor_31:         cp      data_80
2550
                jr      z,xor_32
2551
                inc_error_cnt
2552
xor_32:         ld      hl,var5
2553
                ld      a,data_ff
2554
                xor     a,(hl)
2555
                jp      m,xor_33
2556
                inc_error_cnt
2557
xor_33:         jp      po,xor_34
2558
                inc_error_cnt
2559
xor_34:         xor     a,(hl)
2560
                jp      m,xor_35
2561
                inc_error_cnt
2562
xor_35:         jp      pe,xor_36
2563
                inc_error_cnt
2564
xor_36:         ld      hl,var3
2565
                xor     a,(hl)
2566
                jp      p,xor_37
2567
                inc_error_cnt
2568
xor_37:         cp      data_7f
2569
                jr      z,xor_38
2570
                inc_error_cnt
2571
xor_38:         ld      hl,var1
2572
                ld      a,data_ff
2573
                xor     a,(hl)
2574
                jr      z,xor_39
2575
                inc_error_cnt
2576
xor_39:         ld      hl,var2
2577
                xor     a,(hl)
2578
                jr      nz,xor_40
2579
                inc_error_cnt
2580
xor_40:         cp      data_55
2581
                jr      z,xor_41
2582
                inc_error_cnt
2583
xor_41:         ld      ix,var3
2584
                ld      a,data_ff
2585
                xor     a,(ix+2)
2586
                jp      m,xor_42
2587
                inc_error_cnt
2588
xor_42:         jp      po,xor_43
2589
                inc_error_cnt
2590
xor_43:         xor     a,(ix+2)
2591
                jp      m,xor_44
2592
                inc_error_cnt
2593
xor_44:         jp      pe,xor_45
2594
                inc_error_cnt
2595
xor_45:         xor     a,(ix+1)
2596
                jp      p,xor_46
2597
                inc_error_cnt
2598
xor_46:         cp      data_55
2599
                jr      z,xor_47
2600
                inc_error_cnt
2601
xor_47:         ld      a,data_ff
2602
                xor     a,(ix-2)
2603
                jr      z,xor_48
2604
                inc_error_cnt
2605
xor_48:         xor     a,(ix+1)
2606
                jr      nz,xor_49
2607
                inc_error_cnt
2608
xor_49:         cp      data_aa
2609
                jr      z,xor_50
2610
                inc_error_cnt
2611
xor_50:         ld      iy,var3
2612
                ld      a,data_ff
2613
                xor     a,(iy+2)
2614
                jp      m,xor_51
2615
                inc_error_cnt
2616
xor_51:         jp      po,xor_52
2617
                inc_error_cnt
2618
xor_52:         xor     a,(iy+2)
2619
                jp      m,xor_53
2620
                inc_error_cnt
2621
xor_53:         jp      pe,xor_54
2622
                inc_error_cnt
2623
xor_54:         xor     a,(iy+1)
2624
                jp      p,xor_55
2625
                inc_error_cnt
2626
xor_55:         cp      data_55
2627
                jr      z,xor_56
2628
                inc_error_cnt
2629
xor_56:         ld      a,data_ff
2630
                xor     a,(iy-2)
2631
                jr      z,xor_57
2632
                inc_error_cnt
2633
xor_57:         xor     a,(iy-1)
2634
                jr      nz,xor_58
2635
                inc_error_cnt
2636
xor_58:         cp      data_55
2637
                jr      z,cp_0
2638
                inc_error_cnt
2639
cp_0:           ld      a,0
2640
                ld      b,0
2641
                cp      a,b
2642
                jr      z,cp_1
2643
                inc_error_cnt
2644
cp_1:           jp      p,cp_2
2645
                inc_error_cnt
2646
cp_2:           jr      nc,cp_3
2647
                inc_error_cnt
2648
cp_3:           ld      b,data_55
2649
                cp      a,b
2650
                jr      nz,cp_4
2651
                inc_error_cnt
2652
cp_4:           jp      m,cp_5
2653
                inc_error_cnt
2654
cp_5:           jr      c,cp_6
2655
                inc_error_cnt
2656
cp_6:           ld      a,data_80
2657
                ld      b,data_7f
2658
                cp      a,b
2659
                jp      pe,cp_7
2660
                inc_error_cnt
2661
cp_7:           jr      nc,cp_8
2662
                inc_error_cnt
2663
cp_8:           ld      a,data_7f
2664
                ld      b,data_80
2665
                cp      a,b
2666
                jp      pe,cp_9
2667
                inc_error_cnt
2668
cp_9:           jr      c,cp_10
2669
                inc_error_cnt
2670
cp_10:          ld      b,0
2671
                cp      a,b
2672
                jp      po,cp_11
2673
                inc_error_cnt
2674
cp_11:          jr      nc,cp_12
2675
                inc_error_cnt
2676
cp_12:          ld      a,data_80
2677
                ld      c,0
2678
                cp      a,c
2679
                jp      m,cp_13
2680
                inc_error_cnt
2681
cp_13:          ld      c,data_80
2682
                cp      a,c
2683
                jr      z,cp_14
2684
                inc_error_cnt
2685
cp_14:          ld      a,data_7f
2686
                ld      d,data_55
2687
                cp      a,d
2688
                jp      p,cp_15
2689
                inc_error_cnt
2690
cp_15:          jr      nz,cp_16
2691
                inc_error_cnt
2692
cp_16:          ld      e,data_7f
2693
                cp      a,e
2694
                jr      z,cp_17
2695
                inc_error_cnt
2696
cp_17:          ld      a,data_80
2697
                ld      h,data_ff
2698
                cp      a,h
2699
                jp      m,cp_18
2700
                inc_error_cnt
2701
cp_18:          jr      c,cp_19
2702
                inc_error_cnt
2703
cp_19:          ld      l,data_80
2704
                cp      a,l
2705
                jr      z,cp_20
2706
                inc_error_cnt
2707
cp_20:          ld      a,data_80
2708
                cp      a,data_7f
2709
                jp      p,cp_21
2710
                inc_error_cnt
2711
cp_21:          jp      pe,cp_22
2712
                inc_error_cnt
2713
cp_22:          jr      nz,cp_23
2714
                inc_error_cnt
2715
cp_23:          cp      a,data_80
2716
                jp      p,cp_24
2717
                inc_error_cnt
2718
cp_24:          jp      po,cp_25
2719
                inc_error_cnt
2720
cp_25:          jr      z,cp_26
2721
                inc_error_cnt
2722
cp_26:          ld      a,data_55
2723
                cp      a,data_7f
2724
                jr      c,cp_27
2725
                inc_error_cnt
2726
cp_27:          jp      m,cp_28
2727
                inc_error_cnt
2728
cp_28:          cp      a,data_55
2729
                jr      nc,cp_29
2730
                inc_error_cnt
2731
cp_29:          jr      z,cp_30
2732
                inc_error_cnt
2733
cp_30:          ld      a,data_80
2734
                ld      hl,var5
2735
                cp      a,(hl)
2736
                jp      p,cp_31
2737
                inc_error_cnt
2738
cp_31:          jp      pe,cp_32
2739
                inc_error_cnt
2740
cp_32:          jr      nz,cp_33
2741
                inc_error_cnt
2742
cp_33:          ld      hl,var3
2743
                cp      a,(hl)
2744
                jp      p,cp_34
2745
                inc_error_cnt
2746
cp_34:          jp      po,cp_35
2747
                inc_error_cnt
2748
cp_35:          jr      z,cp_36
2749
                inc_error_cnt
2750
cp_36:          ld      a,data_55
2751
                ld      hl,var5
2752
                cp      a,(hl)
2753
                jr      c,cp_37
2754
                inc_error_cnt
2755
cp_37:          jp      m,cp_38
2756
                inc_error_cnt
2757
cp_38:          ld      hl,var2
2758
                cp      a,(hl)
2759
                jr      nc,cp_39
2760
                inc_error_cnt
2761
cp_39:          jp      p,cp_40
2762
                inc_error_cnt
2763
cp_40:          jr      z,cp_41
2764
                inc_error_cnt
2765
cp_41:          ld      a,data_80
2766
                ld      ix,var3
2767
                cp      a,(ix+2)
2768
                jp      p,cp_42
2769
                inc_error_cnt
2770
cp_42:          jp      pe,cp_43
2771
                inc_error_cnt
2772
cp_43:          jr      nz,cp_44
2773
                inc_error_cnt
2774
cp_44:          cp      a,(ix+0)
2775
                jp      p,cp_45
2776
                inc_error_cnt
2777
cp_45:          jp      po,cp_46
2778
                inc_error_cnt
2779
cp_46:          jr      z,cp_47
2780
                inc_error_cnt
2781
cp_47:          ld      a,data_55
2782
                cp      a,(ix-2)
2783
                jr      nz,cp_48
2784
                inc_error_cnt
2785
cp_48:          jr      c,cp_49
2786
                inc_error_cnt
2787
cp_49:          cp      a,(ix-1)
2788
                jr      z,cp_50
2789
                inc_error_cnt
2790
cp_50:          jr      nc,cp_51
2791
                inc_error_cnt
2792
cp_51:          ld      iy,var3
2793
                ld      a,data_80
2794
                cp      a,(iy+2)
2795
                jp      p,cp_52
2796
                inc_error_cnt
2797
cp_52:          jp      pe,cp_53
2798
                inc_error_cnt
2799
cp_53:          jr      nz,cp_54
2800
                inc_error_cnt
2801
cp_54:          cp      a,(iy+0)
2802
                jp      p,cp_55
2803
                inc_error_cnt
2804
cp_55:          jp      po,cp_56
2805
                inc_error_cnt
2806
cp_56:          jr      z,cp_57
2807
                inc_error_cnt
2808
cp_57:          ld      a,data_55
2809
                cp      a,(iy-2)
2810
                jr      nz,cp_58
2811
                inc_error_cnt
2812
cp_58:          jr      c,cp_59
2813
                inc_error_cnt
2814
cp_59:          cp      a,(iy-1)
2815
                jr      z,cp_60
2816
                inc_error_cnt
2817
cp_60:          jr      nc,inc_0
2818
                inc_error_cnt
2819
inc_0:          ld      a,data_7f
2820
                cp      a,data_7f
2821
                jr      z,inc_1
2822
                inc_error_cnt
2823
inc_1:          inc     a
2824
                jp      pe,inc_2
2825
                inc_error_cnt
2826
inc_2:          jp      m,inc_3
2827
                inc_error_cnt
2828
inc_3:          jr      nz,inc_4
2829
                inc_error_cnt
2830
inc_4:          ld      a,data_55
2831
                inc     a
2832
                jp      po,inc_5
2833
                inc_error_cnt
2834
inc_5:          jp      p,inc_6
2835
                inc_error_cnt
2836
inc_6:          cp      a,data_55+1
2837
                jr      z,inc_7
2838
                inc_error_cnt
2839
inc_7:          ld      a,data_ff-1
2840
                inc     a
2841
                jr      nz,inc_8
2842
                inc_error_cnt
2843
inc_8:          jp      m,inc_9
2844
                inc_error_cnt
2845
inc_9:          inc     a
2846
                jr      z,inc_10
2847
                inc_error_cnt
2848
inc_10:         ld      b,data_aa
2849
                inc     b
2850
                jp      m,inc_11
2851
                inc_error_cnt
2852
inc_11:         ld      a,b
2853
                cp      a,data_aa+1
2854
                jr      z,inc_12
2855
                inc_error_cnt
2856
inc_12:         ld      c,data_80
2857
                inc     c
2858
                jp      m,inc_13
2859
                inc_error_cnt
2860
inc_13:         ld      a,c
2861
                cp      a,data_80+1
2862
                jr      z,inc_14
2863
                inc_error_cnt
2864
inc_14:         ld      d,data_ff
2865
                inc     d
2866
                jr      z,inc_15
2867
                inc_error_cnt
2868
inc_15:         ld      e,data_55
2869
                inc     e
2870
                jp      p,inc_16
2871
                inc_error_cnt
2872
inc_16:         ld      a,e
2873
                cp      a,data_55+1
2874
                jr      z,inc_17
2875
                inc_error_cnt
2876
inc_17:         ld      h,data_7f
2877
                inc     h
2878
                jp      pe,inc_18
2879
                inc_error_cnt
2880
inc_18:         ld      a,h
2881
                cp      a,data_80
2882
                jr      z,inc_19
2883
                inc_error_cnt
2884
inc_19:         ld      l,data_aa
2885
                inc     l
2886
                jp      m,inc_20
2887
                inc_error_cnt
2888
inc_20:         ld      a,l
2889
                cp      a,data_aa+1
2890
                jr      z,inc_21
2891
                inc_error_cnt
2892
inc_21:         ld      hl,t_var1
2893
                ld      a,data_7f
2894
                ld      (hl),a
2895
                cp      a,(hl)
2896
                jr      z,inc_22
2897
                inc_error_cnt
2898
inc_22:         inc     (hl)
2899
                jp      m,inc_23
2900
                inc_error_cnt
2901
inc_23:         jp      pe,inc_24
2902
                inc_error_cnt
2903
inc_24:         ld      a,data_55
2904
                ld      (hl),a
2905
                inc     (hl)
2906
                jp      p,inc_25
2907
                inc_error_cnt
2908
inc_25:         jp      po,inc_26
2909
                inc_error_cnt
2910
inc_26:         ld      a,(hl)
2911
                cp      a,data_55+1
2912
                jr      z,inc_27
2913
                inc_error_cnt
2914
inc_27:         ld      a,data_ff
2915
                ld      (hl),a
2916
                inc     (hl)
2917
                jr      z,inc_28
2918
                inc_error_cnt
2919
inc_28:         inc     (hl)
2920
                jr      nz,inc_29
2921
                inc_error_cnt
2922
inc_29:         ld      a,(hl)
2923
                cp      a,1
2924
                jr      z,inc_30
2925
                inc_error_cnt
2926
inc_30:         ld      a,data_aa
2927
                ld      (hl),a
2928
                inc     (hl)
2929
                jp      m,inc_31
2930
                inc_error_cnt
2931
inc_31:         ld      a,(hl)
2932
                cp      a,data_aa+1
2933
                jr      z,inc_32
2934
                inc_error_cnt
2935
inc_32:         ld      ix,t_var3
2936
                ld      a,data_7f
2937
                ld      (ix-2),a
2938
                cp      a,data_7f
2939
                jr      z,inc_33
2940
                inc_error_cnt
2941
inc_33:         inc     (ix-2)
2942
                jp      m,inc_34
2943
                inc_error_cnt
2944
inc_34:         jp      pe,inc_35
2945
                inc_error_cnt
2946
inc_35:         ld      a,data_55
2947
                ld      (ix+2),a
2948
                inc     (ix+2)
2949
                jp      p,inc_36
2950
                inc_error_cnt
2951
inc_36:         jp      po,inc_37
2952
                inc_error_cnt
2953
inc_37:         ld      a,(ix+2)
2954
                cp      a,data_55+1
2955
                jr      z,inc_38
2956
                inc_error_cnt
2957
inc_38:         ld      a,data_ff
2958
                ld      (ix-1),a
2959
                inc     (ix-1)
2960
                jr      z,inc_39
2961
                inc_error_cnt
2962
inc_39:         inc     (ix-1)
2963
                jr      nz,inc_40
2964
                inc_error_cnt
2965
inc_40:         ld      a,(ix-1)
2966
                cp      a,1
2967
                jr      z,inc_41
2968
                inc_error_cnt
2969
inc_41:         ld      a,data_aa
2970
                ld      (ix+1),a
2971
                inc     (ix+1)
2972
                jp      m,inc_42
2973
                inc_error_cnt
2974
inc_42:         ld      a,(ix+1)
2975
                cp      a,data_aa+1
2976
                jr      z,inc_43
2977
                inc_error_cnt
2978
inc_43:         ld      iy,t_var3
2979
                ld      a,data_7f
2980
                ld      (iy+2),a
2981
                cp      a,data_7f
2982
                jr      z,inc_44
2983
                inc_error_cnt
2984
inc_44:         inc     (iy+2)
2985
                jp      m,inc_45
2986
                inc_error_cnt
2987
inc_45:         jp      pe,inc_46
2988
                inc_error_cnt
2989
inc_46:         ld      a,data_55
2990
                ld      (iy-2),a
2991
                inc     (iy-2)
2992
                jp      p,inc_47
2993
                inc_error_cnt
2994
inc_47:         jp      po,inc_48
2995
                inc_error_cnt
2996
inc_48:         ld      a,(iy-2)
2997
                cp      a,data_55+1
2998
                jr      z,inc_49
2999
                inc_error_cnt
3000
inc_49:         ld      a,data_ff
3001
                ld      (iy+1),a
3002
                inc     (iy+1)
3003
                jr      z,inc_50
3004
                inc_error_cnt
3005
inc_50:         inc     (iy+1)
3006
                jr      nz,inc_51
3007
                inc_error_cnt
3008
inc_51:         ld      a,(iy+1)
3009
                cp      a,1
3010
                jr      z,inc_52
3011
                inc_error_cnt
3012
inc_52:         ld      a,data_80
3013
                ld      (iy-1),a
3014
                inc     (iy-1)
3015
                jp      m,inc_53
3016
                inc_error_cnt
3017
inc_53:         ld      a,(iy-1)
3018
                cp      a,data_80+1
3019
                jr      z,dec_0
3020
                inc_error_cnt
3021
dec_0:          ld      a,data_80
3022
                cp      a,data_80
3023
                jr      z,dec_1
3024
                inc_error_cnt
3025
dec_1:          dec     a
3026
                jp      p,dec_2
3027
                inc_error_cnt
3028
dec_2:          jp      pe,dec_3
3029
                inc_error_cnt
3030
dec_3:          ld      a,0
3031
                dec     a
3032
                jp      m,dec_4
3033
                inc_error_cnt
3034
dec_4:          jp      po,dec_5
3035
                inc_error_cnt
3036
dec_5:          cp      a,data_ff
3037
                jr      z,dec_6
3038
                inc_error_cnt
3039
dec_6:          ld      a,1
3040
                dec     a
3041
                jr      z,dec_7
3042
                inc_error_cnt
3043
dec_7:          dec     a
3044
                jr      nz,dec_8
3045
                inc_error_cnt
3046
dec_8:          cp      a,data_ff
3047
                jr      z,dec_9
3048
                inc_error_cnt
3049
dec_9:          ld      a,data_aa
3050
                dec     a
3051
                cp      a,data_aa-1
3052
                jr      z,dec_10
3053
                inc_error_cnt
3054
dec_10:         ld      b,data_7f
3055
                dec     b
3056
                ld      a,b
3057
                cp      a,data_7f-1
3058
                jr      z,dec_11
3059
                inc_error_cnt
3060
dec_11:         ld      c,data_55
3061
                dec     c
3062
                ld      a,c
3063
                cp      a,data_55-1
3064
                jr      z,dec_12
3065
                inc_error_cnt
3066
dec_12:         ld      d,data_aa
3067
                dec     d
3068
                ld      a,d
3069
                cp      a,data_aa-1
3070
                jr      z,dec_13
3071
                inc_error_cnt
3072
dec_13:         ld      e,data_80
3073
                dec     e
3074
                ld      a,e
3075
                cp      a,data_80-1
3076
                jr      z,dec_14
3077
                inc_error_cnt
3078
dec_14:         ld      h,data_ff
3079
                dec     h
3080
                ld      a,h
3081
                cp      a,data_ff-1
3082
                jr      z,dec_15
3083
                inc_error_cnt
3084
dec_15:         ld      l,data_55
3085
                dec     l
3086
                ld      a,l
3087
                cp      a,data_55-1
3088
                jr      z,dec_16
3089
                inc_error_cnt
3090
dec_16:         ld      hl,t_var5
3091
                ld      a,data_80
3092
                ld      (hl),a
3093
                cp      a,(hl)
3094
                jr      z,dec_17
3095
                inc_error_cnt
3096
dec_17:         dec     (hl)
3097
                jp      p,dec_18
3098
                inc_error_cnt
3099
dec_18:         jp      pe,dec_19
3100
                inc_error_cnt
3101
dec_19:         ld      a,0
3102
                ld      (hl),a
3103
                dec     (hl)
3104
                jp      m,dec_20
3105
                inc_error_cnt
3106
dec_20:         jp      po,dec_21
3107
                inc_error_cnt
3108
dec_21:         ld      a,(hl)
3109
                cp      a,data_ff
3110
                jr      z,dec_22
3111
                inc_error_cnt
3112
dec_22:         ld      a,1
3113
                ld      (hl),a
3114
                dec     (hl)
3115
                jr      z,dec_23
3116
                inc_error_cnt
3117
dec_23:         dec     (hl)
3118
                jr      nz,dec_24
3119
                inc_error_cnt
3120
dec_24:         ld      a,(hl)
3121
                cp      a,data_ff
3122
                jr      z,dec_25
3123
                inc_error_cnt
3124
dec_25:         ld      a,data_aa
3125
                ld      (hl),a
3126
                dec     (hl)
3127
                ld      a,(hl)
3128
                cp      a,data_aa-1
3129
                jr      z,dec_26
3130
                inc_error_cnt
3131
dec_26:         ld      ix,t_var3
3132
                ld      a,data_80
3133
                ld      (ix-2),a
3134
                cp      a,(ix-2)
3135
                jr      z,dec_27
3136
                inc_error_cnt
3137
dec_27:         dec     (ix-2)
3138
                jp      p,dec_28
3139
                inc_error_cnt
3140
dec_28:         jp      pe,dec_29
3141
                inc_error_cnt
3142
dec_29:         ld      a,0
3143
                ld      (ix+2),a
3144
                dec     (ix+2)
3145
                jp      m,dec_30
3146
                inc_error_cnt
3147
dec_30:         jp      po,dec_31
3148
                inc_error_cnt
3149
dec_31:         ld      a,(ix+2)
3150
                cp      a,data_ff
3151
                jr      z,dec_32
3152
                inc_error_cnt
3153
dec_32:         ld      a,1
3154
                ld      (ix-1),a
3155
                dec     (ix-1)
3156
                jr      z,dec_33
3157
                inc_error_cnt
3158
dec_33:         dec     (ix-1)
3159
                jr      nz,dec_34
3160
                inc_error_cnt
3161
dec_34:         ld      a,(ix-1)
3162
                cp      a,data_ff
3163
                jr      z,dec_35
3164
                inc_error_cnt
3165
dec_35:         ld      a,data_7f
3166
                ld      (ix+1),a
3167
                dec     (ix+1)
3168
                ld      a,(ix+1)
3169
                cp      a,data_7f-1
3170
                jr      z,dec_36
3171
                inc_error_cnt
3172
dec_36:         ld      iy,t_var3
3173
                ld      a,data_80
3174
                ld      (iy-2),a
3175
                cp      a,(iy-2)
3176
                jr      z,dec_37
3177
                inc_error_cnt
3178
dec_37:         dec     (iy-2)
3179
                jp      p,dec_38
3180
                inc_error_cnt
3181
dec_38:         jp      pe,dec_39
3182
                inc_error_cnt
3183
dec_39:         ld      a,0
3184
                ld      (iy+2),a
3185
                dec     (iy+2)
3186
                jp      m,dec_40
3187
                inc_error_cnt
3188
dec_40:         jp      po,dec_41
3189
                inc_error_cnt
3190
dec_41:         ld      a,(iy+2)
3191
                cp      a,data_ff
3192
                jr      z,dec_42
3193
                inc_error_cnt
3194
dec_42:         ld      a,1
3195
                ld      (iy+1),a
3196
                dec     (iy+1)
3197
                jr      z,dec_43
3198
                inc_error_cnt
3199
dec_43:         dec     (iy+1)
3200
                jr      nz,dec_44
3201
                inc_error_cnt
3202
dec_44:         ld      a,(iy+1)
3203
                cp      a,data_ff
3204
                jr      z,dec_45
3205
                inc_error_cnt
3206
dec_45:         ld      a,data_aa
3207
                ld      (iy-1),a
3208
                dec     (iy-1)
3209
                ld      a,(iy-1)
3210
                cp      a,data_aa-1
3211
                jr      z,cpl_0
3212
                inc_error_cnt
3213
cpl_0:          ld      a,data_ff
3214
                cpl
3215
                cp      a,0
3216
                jr      z,cpl_1
3217
                inc_error_cnt
3218
cpl_1:          ld      a,data_aa
3219
                cpl
3220
                cp      a,data_55
3221
                jr      z,cpl_2
3222
                inc_error_cnt
3223
cpl_2:          cpl
3224
                cp      a,data_aa
3225
                jr      z,neg_0
3226
                inc_error_cnt
3227
neg_0:          ld      a,data_80
3228
                cp      a,data_80
3229
                jp      po,neg_1
3230
                inc_error_cnt
3231
neg_1:          neg
3232
                jp      pe,neg_2
3233
                inc_error_cnt
3234
neg_2:          jr      nz,neg_3
3235
                inc_error_cnt
3236
neg_3:          jr      c,neg_4
3237
                inc_error_cnt
3238
neg_4:          ld      a,0
3239
                neg
3240
                jp      po,neg_5
3241
                inc_error_cnt
3242
neg_5:          jr      z,neg_6
3243
                inc_error_cnt
3244
neg_6:          jr      nc,neg_7
3245
                inc_error_cnt
3246
neg_7:          ld      a,data_55
3247
                cp      a,data_55
3248
                jp      p,neg_8
3249
                inc_error_cnt
3250
neg_8:          neg
3251
                jp      m,neg_9
3252
                inc_error_cnt
3253
neg_9:          neg
3254
                jp      p,neg_10
3255
                inc_error_cnt
3256
neg_10:         cp      a,data_55
3257
                jr      z,ccf_0
3258
                inc_error_cnt
3259
ccf_0:          scf
3260
                jr      c,ccf_1
3261
                inc_error_cnt
3262
ccf_1:          ccf
3263
                jr      nc,ccf_2
3264
                inc_error_cnt
3265
ccf_2:          ccf
3266
                jr      c,im_0
3267
                inc_error_cnt
3268
im_0:           im      0
3269
                im      1
3270
                im      2
3271
daa_0:          ld      a,#99
3272
                ld      b,#1
3273
                add     a,b
3274
                daa
3275
                jr      c,daa_1
3276
                inc_error_cnt
3277
daa_1:          jr      z,daa_2
3278
                inc_error_cnt
3279
daa_2:          add     a,b
3280
                jr      nc,daa_3
3281
                inc_error_cnt
3282
daa_3:          jr      nz,daa_4
3283
                inc_error_cnt
3284
daa_4:          cp      a,1
3285
                jr      z,daa_5
3286
                inc_error_cnt
3287
daa_5:          ld      a,#98
3288
                ld      b,1
3289
                add     a,b
3290
                daa
3291
                jp      m,daa_6
3292
                inc_error_cnt
3293
daa_6:          add     a,b
3294
                daa
3295
                jp      p,daa_7
3296
                inc_error_cnt
3297
daa_7:          ld      a,1
3298
                ld      b,1
3299
                add     a,b
3300
                daa
3301
                jp      po,daa_8
3302
                inc_error_cnt
3303
daa_8:          add     a,b
3304
                daa
3305
                jp      pe,daa_9
3306
                inc_error_cnt
3307
daa_9:          cp      a,3
3308
                jr      z,add_74
3309
                inc_error_cnt
3310
add_74:         ld      hl,data_1234
3311
                add     hl,hl
3312
                jr      nc,add_75
3313
                inc_error_cnt
3314
add_75:         ld      a,h
3315
                cp      a,#24
3316
                jr      z,add_76
3317
                inc_error_cnt
3318
add_76:         ld      a,l
3319
                cp      a,#68
3320
                jr      z,add_77
3321
                inc_error_cnt
3322
add_77:         ld      hl,data_7fff
3323
                ld      bc,data_8000
3324
                add     hl,bc
3325
                jr      nc,add_78
3326
                inc_error_cnt
3327
add_78:         ld      bc,1
3328
                add     hl,bc
3329
                jr      c,add_79
3330
                inc_error_cnt
3331
add_79:         ld      a,h
3332
                cp      a,0
3333
                jr      z,add_80
3334
                inc_error_cnt
3335
add_80:         ld      a,l
3336
                cp      a,0
3337
                jr      z,add_81
3338
                inc_error_cnt
3339
add_81:         ld      hl,data_aa55
3340
                ld      de,data_ffff
3341
                add     hl,de
3342
                jr      c,add_82
3343
                inc_error_cnt
3344
add_82:         ld      a,h
3345
                cp      a,data_aa
3346
                jr      z,add_83
3347
                inc_error_cnt
3348
add_83:         ld      a,l
3349
                cp      a,data_55-1
3350
                jr      z,add_84
3351
                inc_error_cnt
3352
add_84:         ld      hl,data_aa55
3353
                ld      sp,data_8000
3354
                add     hl,sp
3355
                jr      c,add_85
3356
                inc_error_cnt
3357
add_85:         ld      a,h
3358
                cp      a,#2a
3359
                jr      z,add_86
3360
                inc_error_cnt
3361
add_86:         ld      a,l
3362
                cp      a,data_55
3363
                jr      z,add_87
3364
                inc_error_cnt
3365
add_87:         ld      sp,stack_end
3366
                ld      hl,data_1234
3367
                scf
3368
                ccf
3369
                adc     hl,hl
3370
                jr      nz,add_88
3371
                inc_error_cnt
3372
add_88:         jr      nc,add_89
3373
                inc_error_cnt
3374
add_89:         jp      p,add_90
3375
                inc_error_cnt
3376
add_90:         jp      po,add_91
3377
                inc_error_cnt
3378
add_91:         ld      bc,data_8000
3379
                adc     hl,bc
3380
                jp      m,add_92
3381
                inc_error_cnt
3382
add_92:         jr      nc,add_93
3383
                inc_error_cnt
3384
add_93:         jp      po,add_94
3385
                inc_error_cnt
3386
add_94:         jp      nz,add_95
3387
                inc_error_cnt
3388
add_95:         adc     hl,bc
3389
                jp      p,add_96
3390
                inc_error_cnt
3391
add_96:         jp      pe,add_97
3392
                inc_error_cnt
3393
add_97:         jr      c,add_98
3394
                inc_error_cnt
3395
add_98:         jr      nz,add_99
3396
                inc_error_cnt
3397
add_99:         ld      de,#db97
3398
                adc     hl,de
3399
                jr      z,add_100
3400
                inc_error_cnt
3401
add_100:        jr      c,add_101
3402
                inc_error_cnt
3403
add_101:        jp      po,add_102
3404
                inc_error_cnt
3405
add_102:        ld      de,0
3406
                adc     hl,de
3407
                jr      nc,add_103
3408
                inc_error_cnt
3409
add_103:        jr      nz,add_104
3410
                inc_error_cnt
3411
add_104:        ld      a,h
3412
                cp      a,0
3413
                jr      z,add_105
3414
                inc_error_cnt
3415
add_105:        ld      a,l
3416
                cp      a,1
3417
                jr      z,add_106
3418
                inc_error_cnt
3419
add_106:        ld      hl,data_1234
3420
                ld      sp,data_ffff
3421
                adc     hl,sp
3422
                jr      c,add_107
3423
                inc_error_cnt
3424
add_107:        ld      a,h
3425
                cp      a,#12
3426
                jr      z,add_108
3427
                inc_error_cnt
3428
add_108:        ld      a,l
3429
                cp      a,#33
3430
                jr      z,sbc_66
3431
                inc_error_cnt
3432
sbc_66:         ld      sp,stack_end
3433
                scf
3434
                ccf
3435
                ld      hl,data_1234
3436
                sbc     hl,hl
3437
                jr      z,sbc_67
3438
                inc_error_cnt
3439
sbc_67:         jp      p,sbc_68
3440
                inc_error_cnt
3441
sbc_68:         jp      po,sbc_69
3442
                inc_error_cnt
3443
sbc_69:         jr      nc,sbc_70
3444
                inc_error_cnt
3445
sbc_70:         ld      bc,data_1234
3446
                sbc     hl,bc
3447
                jr      nz,sbc_71
3448
                inc_error_cnt
3449
sbc_71:         jr      c,sbc_72
3450
                inc_error_cnt
3451
sbc_72:         jp      m,sbc_73
3452
                inc_error_cnt
3453
sbc_73:         jp      po,sbc_74
3454
                inc_error_cnt
3455
sbc_74:         ld      de,data_7fff
3456
                sbc     hl,de
3457
                jr      nz,sbc_75
3458
                inc_error_cnt
3459
sbc_75:         jr      nc,sbc_76
3460
                inc_error_cnt
3461
sbc_76:         jp      p,sbc_77
3462
                inc_error_cnt
3463
sbc_77:         jp      pe,sbc_78
3464
                inc_error_cnt
3465
sbc_78:         ld      sp,data_1234
3466
                sbc     hl,sp
3467
                jr      nz,sbc_79
3468
                inc_error_cnt
3469
sbc_79:         ld      a,h
3470
                cp      a,#5b
3471
                jr      z,sbc_80
3472
                inc_error_cnt
3473
sbc_80:         ld      a,l
3474
                cp      a,#98
3475
                jr      z,add_109
3476
                inc_error_cnt
3477
add_109:        ld      sp,stack_end
3478
                ld      ix,0
3479
                add     ix,sp
3480
                jr      nc,add_110
3481
                inc_error_cnt
3482 25 bporcella
add_110:        push    ix
3483
                pop     hl
3484
                ld      a,h
3485
                cp      a,#71           ; >stack_end
3486
                jr      z,add_111
3487
                inc_error_cnt
3488
add_111:        ld      a,l
3489
                cp      a,#80           ; 
3490
                jr      z,add_112
3491
                inc_error_cnt
3492
add_112:        ld      ix,data_7fff
3493
                ld      bc,data_aa55
3494
                add     ix,bc
3495
                jr      c,add_113
3496
                inc_error_cnt
3497
add_113:        add     ix,bc
3498
                jr      nc,add_114
3499
                inc_error_cnt
3500
add_114:        push    ix
3501
                pop     hl
3502
                ld      a,h
3503
                cp      a,#d4
3504
                jr      z,add_115
3505
                inc_error_cnt
3506
add_115:        ld      a,l
3507
                cp      a,#a9
3508
                jr      z,add_116
3509
                inc_error_cnt
3510
add_116:        ld      ix,data_1234
3511
                ld      de,data_1234
3512
                add     ix,de
3513
                push    ix
3514
                pop     hl
3515
                ld      a,h
3516
                cp      a,#24           ;>(data_1234+data_1234)
3517
                jr      z,add_117
3518
                inc_error_cnt
3519
add_117:        ld      a,l
3520
                cp      a,#68           ;<(data_1234+data_1234)
3521
                jr      z,add_118
3522
                inc_error_cnt
3523
add_118:        ld      ix,data_1234
3524
                add     ix,ix
3525
                push    ix
3526
                pop     bc
3527
                ld      a,b
3528
                cp      a,#24           ;>(data_1234+data_1234)
3529
                jr      z,add_119
3530
                inc_error_cnt
3531
add_119:        ld      a,c
3532
                cp      a,#68           ;<(data_1234+data_1234)
3533
                jr      z,add_120
3534
                inc_error_cnt
3535
add_120:        ld      sp,stack_end
3536
                ld      iy,0
3537
                add     iy,sp
3538
                jr      nc,add_121
3539
                inc_error_cnt
3540
add_121:        push    iy
3541
                pop     hl
3542
                ld      a,h
3543
                cp      a,#71           ;>stack_end
3544
                jr      z,add_122
3545
                inc_error_cnt
3546
add_122:        ld      a,l
3547
                cp      a,#80           ;
3548
                jr      z,add_123
3549
                inc_error_cnt
3550
add_123:        ld      iy,data_7fff
3551
                ld      bc,data_aa55
3552
                add     iy,bc
3553
                jr      c,add_124
3554
                inc_error_cnt
3555
add_124:        add     iy,bc
3556
                jr      nc,add_125
3557
                inc_error_cnt
3558
add_125:        push    iy
3559
                pop     hl
3560
                ld      a,h
3561
                cp      a,#d4
3562
                jr      z,add_126
3563
                inc_error_cnt
3564
add_126:        ld      a,l
3565
                cp      a,#a9
3566
                jr      z,add_127
3567
                inc_error_cnt
3568
add_127:        ld      iy,data_1234
3569
                ld      de,data_1234
3570
                add     iy,de
3571
                push    iy
3572
                pop     hl
3573
                ld      a,h
3574
                cp      a,#24           ;>(data_1234+data_1234)
3575
                jr      z,add_128
3576
                inc_error_cnt
3577
add_128:        ld      a,l
3578
                cp      a,#68           ;<(data_1234+data_1234)
3579
                jr      z,add_129
3580
                inc_error_cnt
3581
add_129:        ld      iy,data_1234
3582
                add     iy,iy
3583
                push    iy
3584
                pop     bc
3585
                ld      a,b
3586
                cp      a,#24           ;>(data_1234+data_1234)
3587
                jr      z,add_130
3588
                inc_error_cnt
3589
add_130:        ld      a,c
3590
                cp      a,#68           ;<(data_1234+data_1234)
3591
                jr      z,inc_54
3592
                inc_error_cnt
3593
inc_54:         ld      bc,data_1234
3594
                inc     bc
3595
                ld      a,b
3596
                cp      a,#12      ;bjp was >data_1234
3597
                jr      z,inc_55
3598
                inc_error_cnt
3599
inc_55:         ld      a,c
3600
                cp      a,#34+1      ;bjp was >data_1234+1
3601
                jr      z,inc_56
3602
                inc_error_cnt
3603
inc_56:         ld      de,data_55aa
3604
                inc     de
3605
                ld      a,d
3606
                cp      a,#55           ;>data_55aa
3607
                jr      z,inc_57
3608
                inc_error_cnt
3609
inc_57:         ld      a,e
3610
                cp      a,#ab           ;
3611
                jr      z,inc_58
3612
                inc_error_cnt
3613
inc_58:         ld      hl,data_7fff
3614
                inc     hl
3615
                ld      a,h
3616
                cp      a,#80           ;>data_7fff+1
3617
                jr      z,inc_59
3618
                inc_error_cnt
3619
inc_59:         ld      a,l
3620
                cp      a,#00           ;
3621
                jr      z,inc_60
3622
                inc_error_cnt
3623
inc_60:         ld      hl,0
3624
                inc     sp
3625
                add     hl,sp
3626
                ld      sp,stack_end
3627
                ld      a,h
3628
                cp      a,#71           ;>stack_end+1
3629
                jr      z,inc_61
3630
                inc_error_cnt
3631
inc_61:         ld      a,l
3632
                cp      a,#81           ;
3633
                jr      z,inc_62
3634
                inc_error_cnt
3635
inc_62:         ld      ix,data_8000
3636
                inc     ix
3637
                push    ix
3638
                pop     de
3639
                ld      a,d
3640
                cp      a,#80           ;>data_8000
3641
                jr      z,inc_63
3642
                inc_error_cnt
3643
inc_63:         ld      a,e
3644
                cp      a,#01           ;
3645
                jr      z,inc_64
3646
                inc_error_cnt
3647
inc_64:         ld      iy,data_7fff
3648
                inc     iy
3649
                push    iy
3650
                pop     bc
3651
                ld      a,b
3652
                cp      a,#80           ;>data_7fff+1
3653
                jr      z,inc_65
3654
                inc_error_cnt
3655
inc_65:         ld      a,c
3656
                cp      a,#00           ;
3657
                jr      z,dec_46
3658
                inc_error_cnt
3659
dec_46:         ld      bc,data_1234
3660
                dec     bc
3661
                ld      a,b
3662
                cp      a,#12      ;bjp was >data_1234
3663
                jr      z,dec_47
3664
                inc_error_cnt
3665
dec_47:         ld      a,c
3666
                cp      a,#34-1      ;bjp was >data_1234-1
3667
                jr      z,dec_48
3668
                inc_error_cnt
3669
dec_48:         ld      de,data_8000
3670
                dec     de
3671
                ld      a,d
3672
                cp      a,#7f           ;>data_7fff
3673
                jr      z,dec_49
3674
                inc_error_cnt
3675
dec_49:         ld      a,e
3676
                cp      a,#ff           ;
3677
                jr      z,dec_50
3678
                inc_error_cnt
3679
dec_50:         ld      hl,data_aa55
3680
                dec     hl
3681
                ld      a,h
3682
                cp      a,#aa           ;>data_aa55
3683
                jr      z,dec_51
3684
                inc_error_cnt
3685
dec_51:         ld      a,l
3686
                cp      a,#54           ;
3687
                jr      z,dec_52
3688
                inc_error_cnt
3689
dec_52:         ld      hl,0
3690
                dec     sp
3691
                add     hl,sp
3692
                ld      a,h
3693
                cp      a,#71           ;>stack_end-1
3694
                jr      z,dec_53
3695
                inc_error_cnt
3696
dec_53:         ld      a,l
3697
                cp      a,#7f           ;
3698
                jr      z,dec_54
3699
                inc_error_cnt
3700
dec_54:         ld      sp,stack_end
3701
                ld      ix,data_ffff
3702
                dec     ix
3703
                push    ix
3704
                pop     bc
3705
                ld      a,b
3706
                cp      a,#ff           ;>data_ffff
3707
                jr      z,dec_55
3708
                inc_error_cnt
3709
dec_55:         ld      a,c
3710
                cp      a,#fe           ;
3711
                jr      z,dec_56
3712
                inc_error_cnt
3713
dec_56:         ld      iy,data_aa55
3714
                dec     iy
3715
                push    iy
3716
                pop     de
3717
                ld      a,d
3718
                cp      a,#aa           ;>data_aa55
3719
                jr      z,dec_57
3720
                inc_error_cnt
3721
dec_57:         ld      a,e
3722
                cp      a,#54           ;
3723
                jr      z,rlca_0
3724
                inc_error_cnt
3725
rlca_0:         ld      a,data_80
3726
                rlca
3727
                jr      c,rlca_1
3728
                inc_error_cnt
3729
rlca_1:         rlca
3730
                jr      nc,rlca_2
3731
                inc_error_cnt
3732
rlca_2:         cp      a,2
3733
                jr      z,rlca_3
3734
                inc_error_cnt
3735
rlca_3:         ld      a,data_55
3736
                rlca
3737
                cp      a,data_aa
3738
                jr      z,rla_0
3739
                inc_error_cnt
3740
rla_0:          scf
3741
                ccf
3742
                ld      a,data_80
3743
                rla
3744
                jr      c,rla_1
3745
                inc_error_cnt
3746
rla_1:          rla
3747
                jr      nc,rla_2
3748
                inc_error_cnt
3749
rla_2:          cp      a,1
3750
                jr      z,rla_3
3751
                inc_error_cnt
3752
rla_3:          ld      a,data_7f
3753
                rla
3754
                cp      a,data_ff-1
3755
                jr      z,rrca_0
3756
                inc_error_cnt
3757
rrca_0:         scf
3758
                ccf
3759
                ld      a,1
3760
                rrca
3761
                jr      c,rrca_1
3762
                inc_error_cnt
3763
rrca_1:         rrca
3764
                jr      nc,rrca_2
3765
                inc_error_cnt
3766
rrca_2:         cp      a,data_7f-#3f
3767
                jr      z,rrca_3
3768
                inc_error_cnt
3769
rrca_3:         ld      a,data_aa
3770
                rrca
3771
                cp      a,data_55
3772
                jr      z,rra_0
3773
                inc_error_cnt
3774
rra_0:          scf
3775
                ccf
3776
                ld      a,1
3777
                rra
3778
                jr      c,rra_1
3779
                inc_error_cnt
3780
rra_1:          rra
3781
                jr      nc,rra_2
3782
                inc_error_cnt
3783
rra_2:          cp      a,data_80
3784
                jr      z,rra_3
3785
                inc_error_cnt
3786
rra_3:          ld      a,data_aa
3787
                rra
3788
                cp      a,data_55
3789
                jr      z,rlc_0
3790
                inc_error_cnt
3791
rlc_0:          ld      a,data_80
3792
                rlc     a
3793
                jr      c,rlc_1
3794
                inc_error_cnt
3795
rlc_1:          jp      p,rlc_2
3796
                inc_error_cnt
3797
rlc_2:          jr      nz,rlc_3
3798
                inc_error_cnt
3799
rlc_3:          jp      po,rlc_4
3800
                inc_error_cnt
3801
rlc_4:          rlc     a
3802
                jr      nc,rlc_5
3803
                inc_error_cnt
3804
rlc_5:          rlc     a
3805
                rlc     a
3806
                rlc     a
3807
                rlc     a
3808
                rlc     a
3809
                rlc     a
3810
                jp      m,rlc_6
3811
                inc_error_cnt
3812
rlc_6:          ld      a,data_55
3813
                rlc     a
3814
                jp      m,rlc_7
3815
                inc_error_cnt
3816
rlc_7:          jp      pe,rlc_8
3817
                inc_error_cnt
3818
rlc_8:          cp      a,data_aa
3819
                jr      z,rlc_9
3820
                inc_error_cnt
3821
rlc_9:          ld      a,0
3822
                rlc     a
3823
                jr      z,rlc_10
3824
                inc_error_cnt
3825
rlc_10:         ld      b,data_7f
3826
                rlc     b
3827
                ld      a,b
3828
                cp      a,data_ff-1
3829
                jr      z,rlc_11
3830
                inc_error_cnt
3831
rlc_11:         ld      c,data_aa
3832
                rlc     c
3833
                jr      c,rlc_12
3834
                inc_error_cnt
3835
rlc_12:         ld      a,c
3836
                cp      a,data_55
3837
                jr      z,rlc_13
3838
                inc_error_cnt
3839
rlc_13:         ld      d,data_80
3840
                rlc     d
3841
                jr      c,rlc_14
3842
                inc_error_cnt
3843
rlc_14:         ld      a,d
3844
                cp      a,1
3845
                jr      z,rlc_15
3846
                inc_error_cnt
3847
rlc_15:         ld      e,data_ff
3848
                rlc     e
3849
                jr      c,rlc_16
3850
                inc_error_cnt
3851
rlc_16:         ld      a,e
3852
                cp      a,data_ff
3853
                jr      z,rlc_17
3854
                inc_error_cnt
3855
rlc_17:         ld      h,data_55
3856
                rlc     h
3857
                jp      m,rlc_18
3858
                inc_error_cnt
3859
rlc_18:         ld      a,h
3860
                cp      a,data_aa
3861
                jr      z,rlc_19
3862
                inc_error_cnt
3863
rlc_19:         ld      l,data_80
3864
                rlc     l
3865
                jp      p,rlc_20
3866
                inc_error_cnt
3867
rlc_20:         ld      a,l
3868
                cp      a,1
3869
                jr      z,rlc_21
3870
                inc_error_cnt
3871
rlc_21:         ld      hl,t_var1
3872
                ld      a,data_55
3873
                ld      (hl),a
3874
                rlc     (hl)
3875
                jp      m,rlc_22
3876
                inc_error_cnt
3877
rlc_22:         jp      pe,rlc_23
3878
                inc_error_cnt
3879
rlc_23:         jr      nc,rlc_24
3880
                inc_error_cnt
3881
rlc_24:         jr      nz,rlc_25
3882
                inc_error_cnt
3883
rlc_25:         rlc     (hl)
3884
                jp      p,rlc_26
3885
                inc_error_cnt
3886
rlc_26:         jr      c,rlc_27
3887
                inc_error_cnt
3888
rlc_27:         ld      a,(hl)
3889
                cp      a,data_55
3890
                jr      z,rlc_28
3891
                inc_error_cnt
3892
rlc_28:         ld      a,data_7f
3893
                ld      (hl),a
3894
                rlc     (hl)
3895
                jp      po,rlc_29
3896
                inc_error_cnt
3897
rlc_29:         ld      a,(hl)
3898
                cp      a,data_ff-1
3899
                jr      z,rlc_30
3900
                inc_error_cnt
3901
rlc_30:         ld      a,0
3902
                ld      (hl),a
3903
                rlc     (hl)
3904
                jr      z,rlc_31
3905
                inc_error_cnt
3906
rlc_31:         ld      ix,t_var3
3907
                ld      a,data_55
3908
                ld      (ix-2),a
3909
                rlc     (ix-2)
3910
                jp      m,rlc_32
3911
                inc_error_cnt
3912
rlc_32:         jp      pe,rlc_33
3913
                inc_error_cnt
3914
rlc_33:         jr      nz,rlc_34
3915
                inc_error_cnt
3916
rlc_34:         jr      nc,rlc_35
3917
                inc_error_cnt
3918
rlc_35:         rlc     (ix-2)
3919
                jp      p,rlc_36
3920
                inc_error_cnt
3921
rlc_36:         jr      c,rlc_37
3922
                inc_error_cnt
3923
rlc_37:         ld      a,(ix-2)
3924
                cp      a,data_55
3925
                jr      z,rlc_38
3926
                inc_error_cnt
3927
rlc_38:         ld      a,data_7f
3928
                ld      (ix+2),a
3929
                rlc     (ix+2)
3930
                jp      po,rlc_39
3931
                inc_error_cnt
3932
rlc_39:         ld      a,(ix+2)
3933
                cp      a,data_ff-1
3934
                jr      z,rlc_40
3935
                inc_error_cnt
3936
rlc_40:         ld      a,0
3937
                ld      (ix-1),a
3938
                rlc     (ix-1)
3939
                jr      z,rlc_41
3940
                inc_error_cnt
3941
rlc_41:         ld      iy,t_var3
3942
                ld      a,data_55
3943
                ld      (iy+2),a
3944
                rlc     (iy+2)
3945
                jp      m,rlc_42
3946
                inc_error_cnt
3947
rlc_42:         jp      pe,rlc_43
3948
                inc_error_cnt
3949
rlc_43:         jr      nc,rlc_44
3950
                inc_error_cnt
3951
rlc_44:         jr      nz,rlc_45
3952
                inc_error_cnt
3953
rlc_45:         rlc     (iy+2)
3954
                jp      p,rlc_46
3955
                inc_error_cnt
3956
rlc_46:         jr      c,rlc_47
3957
                inc_error_cnt
3958
rlc_47:         ld      a,(iy+2)
3959
                cp      a,data_55
3960
                jr      z,rlc_48
3961
                inc_error_cnt
3962
rlc_48:         ld      a,data_7f
3963
                ld      (iy-2),a
3964
                rlc     (iy-2)
3965
                jp      po,rlc_49
3966
                inc_error_cnt
3967
rlc_49:         ld      a,(iy-2)
3968
                cp      a,data_ff-1
3969
                jr      z,rlc_50
3970
                inc_error_cnt
3971
rlc_50:         ld      a,0
3972
                ld      (iy+1),a
3973
                rlc     (iy+1)
3974
                jr      z,rl_0
3975
                inc_error_cnt
3976
rl_0:           scf
3977
                ccf
3978
                ld      a,data_55
3979
                rl      a
3980
                jp      m,rl_1
3981
                inc_error_cnt
3982
rl_1:           jp      pe,rl_2
3983
                inc_error_cnt
3984
rl_2:           jr      nc,rl_3
3985
                inc_error_cnt
3986
rl_3:           jr      nz,rl_4
3987
                inc_error_cnt
3988
rl_4:           rl      a
3989
                jp      p,rl_5
3990
                inc_error_cnt
3991
rl_5:           jp      po,rl_6
3992
                inc_error_cnt
3993
rl_6:           jr      c,rl_7
3994
                inc_error_cnt
3995
rl_7:           rl      a
3996
                cp      a,data_aa-1
3997
                jr      z,rl_8
3998
                inc_error_cnt
3999
rl_8:           ld      a,0
4000
                rl      a
4001
                jr      z,rl_9
4002
                inc_error_cnt
4003
rl_9:           ld      b,data_aa
4004
                ld      c,data_7f
4005
                rl      b
4006
                jr      c,rl_10
4007
                inc_error_cnt
4008
rl_10:          rl      c
4009
                jr      nc,rl_11
4010
                inc_error_cnt
4011
rl_11:          ld      a,b
4012
                cp      a,data_55-1
4013
                jr      z,rl_12
4014
                inc_error_cnt
4015
rl_12:          ld      a,c
4016
                cp      a,data_ff
4017
                jr      z,rl_13
4018
                inc_error_cnt
4019
rl_13:          ld      d,data_ff
4020
                ld      e,data_80
4021
                rl      e
4022
                jr      c,rl_14
4023
                inc_error_cnt
4024
rl_14:          rl      d
4025
                jr      c,rl_15
4026
                inc_error_cnt
4027
rl_15:          ld      a,d
4028
                cp      a,data_ff
4029
                jr      z,rl_16
4030
                inc_error_cnt
4031
rl_16:          ld      a,e
4032
                cp      a,0
4033
                jr      z,rl_17
4034
                inc_error_cnt
4035
rl_17:          ld      h,data_7f
4036
                ld      l,data_55
4037
                rl      h
4038
                jp      m,rl_18
4039
                inc_error_cnt
4040
rl_18:          rl      l
4041
                jp      m,rl_19
4042
                inc_error_cnt
4043
rl_19:          ld      a,h
4044
                cp      a,data_ff-1
4045
                jr      z,rl_20
4046
                inc_error_cnt
4047
rl_20:          ld      a,l
4048
                cp      a,data_aa
4049
                jr      z,rl_21
4050
                inc_error_cnt
4051
rl_21:          ld      hl,t_var5
4052
                ld      a,data_55
4053
                ld      (hl),a
4054
                rl      (hl)
4055
                jp      m,rl_22
4056
                inc_error_cnt
4057
rl_22:          jp      pe,rl_23
4058
                inc_error_cnt
4059
rl_23:          jr      nc,rl_24
4060
                inc_error_cnt
4061
rl_24:          jr      nz,rl_25
4062
                inc_error_cnt
4063
rl_25:          rl      (hl)
4064
                jp      p,rl_26
4065
                inc_error_cnt
4066
rl_26:          jp      po,rl_27
4067
                inc_error_cnt
4068
rl_27:          jr      c,rl_28
4069
                inc_error_cnt
4070
rl_28:          ld      a,(hl)
4071
                cp      a,data_55-1
4072
                jr      z,rl_29
4073
                inc_error_cnt
4074
rl_29:          ld      a,0
4075
                ld      (hl),a
4076
                rl      (hl)
4077
                jr      z,rl_30
4078
                inc_error_cnt
4079
rl_30:          ld      ix,t_var3
4080
                ld      a,data_55
4081
                ld      (ix-2),a
4082
                rl      (ix-2)
4083
                jp      m,rl_31
4084
                inc_error_cnt
4085
rl_31:          jp      pe,rl_32
4086
                inc_error_cnt
4087
rl_32:          jr      nc,rl_33
4088
                inc_error_cnt
4089
rl_33:          jr      nz,rl_34
4090
                inc_error_cnt
4091
rl_34:          rl      (ix-2)
4092
                jp      p,rl_35
4093
                inc_error_cnt
4094
rl_35:          jp      po,rl_36
4095
                inc_error_cnt
4096
rl_36:          jr      c,rl_37
4097
                inc_error_cnt
4098
rl_37:          ld      a,(ix-2)
4099
                cp      a,data_55-1
4100
                jr      z,rl_38
4101
                inc_error_cnt
4102
rl_38:          ld      a,0
4103
                ld      (ix+2),a
4104
                rl      (ix+2)
4105
                jr      z,rl_39
4106
rl_39:          ld      iy,t_var3
4107
                ld      a,data_55
4108
                ld      (iy-1),a
4109
                rl      (iy-1)
4110
                jp      m,rl_40
4111
                inc_error_cnt
4112
rl_40:          jp      pe,rl_41
4113
                inc_error_cnt
4114
rl_41:          jr      nc,rl_42
4115
                inc_error_cnt
4116
rl_42:          jr      nz,rl_43
4117
                inc_error_cnt
4118
rl_43:          rl      (iy-1)
4119
                jp      p,rl_44
4120
                inc_error_cnt
4121
rl_44:          jp      po,rl_45
4122
                inc_error_cnt
4123
rl_45:          jr      c,rl_46
4124
                inc_error_cnt
4125
rl_46:          ld      a,(iy-1)
4126
                cp      a,data_55-1
4127
                jr      z,rl_47
4128
                inc_error_cnt
4129
rl_47:          ld      a,0
4130
                ld      (iy+1),a
4131
                rl      (iy+1)
4132
                jr      z,rrc_0
4133
                inc_error_cnt
4134
rrc_0:          ld      a,data_aa
4135
                rrc     a
4136
                jp      p,rrc_1
4137
                inc_error_cnt
4138
rrc_1:          jp      pe,rrc_2
4139
                inc_error_cnt
4140
rrc_2:          jr      nz,rrc_3
4141
                inc_error_cnt
4142
rrc_3:          jr      nc,rrc_4
4143
                inc_error_cnt
4144
rrc_4:          rrc     a
4145
                jp      m,rrc_5
4146
                inc_error_cnt
4147
rrc_5:          jr      c,rrc_6
4148
                inc_error_cnt
4149
rrc_6:          cp      a,data_aa
4150
                jr      z,rrc_7
4151
                inc_error_cnt
4152
rrc_7:          ld      a,1
4153
                rrc     a
4154
                jr      c,rrc_8
4155
                inc_error_cnt
4156
rrc_8:          cp      a,data_80
4157
                jr      z,rrc_9
4158
                inc_error_cnt
4159
rrc_9:          ld      a,data_7f
4160
                rrc     a
4161
                jp      po,rrc_10
4162
                inc_error_cnt
4163
rrc_10:         cp      a,#bf
4164
                jr      z,rrc_11
4165
                inc_error_cnt
4166
rrc_11:         ld      b,data_80
4167
                ld      c,data_55
4168
                rrc     b
4169
                jr      nc,rrc_12
4170
                inc_error_cnt
4171
rrc_12:         rrc     c
4172
                jr      c,rrc_13
4173
                inc_error_cnt
4174
rrc_13:         ld      a,b
4175
                cp      a,#40
4176
                jr      z,rrc_14
4177
                inc_error_cnt
4178
rrc_14:         ld      a,c
4179
                cp      a,data_aa
4180
                jr      z,rrc_15
4181
                inc_error_cnt
4182
rrc_15:         ld      d,data_aa
4183
                ld      e,1
4184
                rrc     d
4185
                jp      p,rrc_16
4186
                inc_error_cnt
4187
rrc_16:         rrc     e
4188
                jp      m,rrc_17
4189
                inc_error_cnt
4190
rrc_17:         ld      a,d
4191
                cp      a,data_55
4192
                jr      z,rrc_18
4193
                inc_error_cnt
4194
rrc_18:         ld      a,e
4195
                cp      a,data_80
4196
                jr      z,rrc_19
4197
                inc_error_cnt
4198
rrc_19:         ld      h,data_55
4199
                ld      l,data_ff
4200
                rrc     h
4201
                jr      c,rrc_20
4202
                inc_error_cnt
4203
rrc_20:         rrc     l
4204
                jr      c,rrc_21
4205
                inc_error_cnt
4206
rrc_21:         ld      a,h
4207
                cp      a,data_aa
4208
                jr      z,rrc_22
4209
                inc_error_cnt
4210
rrc_22:         ld      a,l
4211
                cp      a,data_ff
4212
                jr      z,rrc_23
4213
                inc_error_cnt
4214
rrc_23:         ld      hl,t_var4
4215
                ld      (hl),data_aa
4216
                rrc      (hl)
4217
                jp      p,rrc_24
4218
                inc_error_cnt
4219
rrc_24:         jp      pe,rrc_25
4220
                inc_error_cnt
4221
rrc_25:         jr      nz,rrc_26
4222
                inc_error_cnt
4223
rrc_26:         jr      nc,rrc_27
4224
                inc_error_cnt
4225
rrc_27:         rrc     (hl)
4226
                jp      m,rrc_28
4227
                inc_error_cnt
4228
rrc_28:         jr      c,rrc_29
4229
                inc_error_cnt
4230
rrc_29:         ld      a,(hl)
4231
                cp      a,data_aa
4232
                jr      z,rrc_30
4233
                inc_error_cnt
4234
rrc_30:         ld      (hl),data_7f
4235
                rrc     (hl)
4236
                jp      po,rrc_31
4237
                inc_error_cnt
4238
rrc_31:         ld      a,(hl)
4239
                cp      a,#bf
4240
                jr      z,rrc_32
4241
                inc_error_cnt
4242
rrc_32:         ld      (hl),0
4243
                rrc     (hl)
4244
                jr      z,rrc_33
4245
                inc_error_cnt
4246
rrc_33:         ld      ix,t_var3
4247
                ld      a,data_aa
4248
                ld      (ix+2),a
4249
                rrc     (ix+2)
4250
                jp      p,rrc_34
4251
                inc_error_cnt
4252
rrc_34:         jp      pe,rrc_35
4253
                inc_error_cnt
4254
rrc_35:         jr      nc,rrc_36
4255
                inc_error_cnt
4256
rrc_36:         jr      nz,rrc_37
4257
                inc_error_cnt
4258
rrc_37:         rrc     (ix+2)
4259
                jp      m,rrc_38
4260
                inc_error_cnt
4261
rrc_38:         jr      c,rrc_39
4262
                inc_error_cnt
4263
rrc_39:         ld      a,(ix+2)
4264
                cp      a,data_aa
4265
                jr      z,rrc_40
4266
                inc_error_cnt
4267
rrc_40:         ld      a,1
4268
                ld      (ix-2),a
4269
                rrc     (ix-2)
4270
                jp      po,rrc_41
4271
                inc_error_cnt
4272
rrc_41:         ld      a,(ix-2)
4273
                cp      a,data_80
4274
                jr      z,rrc_42
4275
                inc_error_cnt
4276
rrc_42:         ld      a,0
4277
                ld      (ix+1),a
4278
                rrc     (ix+1)
4279
                jr      z,rrc_43
4280
                inc_error_cnt
4281
rrc_43:         ld      iy,t_var3
4282
                ld      a,data_aa
4283
                ld      (iy+2),a
4284
                rrc     (iy+2)
4285
                jp      p,rrc_44
4286
                inc_error_cnt
4287
rrc_44:         jp      pe,rrc_45
4288
                inc_error_cnt
4289
rrc_45:         jr      nc,rrc_46
4290
                inc_error_cnt
4291
rrc_46:         jr      nz,rrc_47
4292
                inc_error_cnt
4293
rrc_47:         rrc     (iy+2)
4294
                jp      m,rrc_48
4295
                inc_error_cnt
4296
rrc_48:         jr      c,rrc_49
4297
                inc_error_cnt
4298
rrc_49:         ld      a,(iy+2)
4299
                cp      a,data_aa
4300
                jr      z,rrc_50
4301
                inc_error_cnt
4302
rrc_50:         ld      a,1
4303
                ld      (iy-2),a
4304
                rrc     (iy-2)
4305
                jp      po,rrc_51
4306
                inc_error_cnt
4307
rrc_51:         ld      a,(iy-2)
4308
                cp      a,data_80
4309
                jr      z,rrc_52
4310
                inc_error_cnt
4311
rrc_52:         ld      a,0
4312
                ld      (iy+1),a
4313
                rrc     (iy+1)
4314
                jr      z,rr_0
4315
                inc_error_cnt
4316
rr_0:           scf
4317
                ccf
4318
                ld      a,data_aa
4319
                rr      a
4320
                jp      p,rr_1
4321
                inc_error_cnt
4322
rr_1:           jp      pe,rr_2
4323
                inc_error_cnt
4324
rr_2:           jr      nc,rr_3
4325
                inc_error_cnt
4326
rr_3:           jr      nz,rr_4
4327
                inc_error_cnt
4328
rr_4:           rr      a
4329
                jr      c,rr_5
4330
                inc_error_cnt
4331
rr_5:           jp      po,rr_6
4332
                inc_error_cnt
4333
rr_6:           cp      a,#2a
4334
                jr      z,rr_7
4335
                inc_error_cnt
4336
rr_7:           scf
4337
                ld      a,0
4338
                rr      a
4339
                jp      m,rr_8
4340
                inc_error_cnt
4341
rr_8:           cp      a,data_80
4342
                jr      z,rr_9
4343
                inc_error_cnt
4344
rr_9:           ld      a,0
4345
                rr      a
4346
                jr      z,rr_10
4347
                inc_error_cnt
4348
rr_10:          ld      b,data_55
4349
                ld      c,data_aa
4350
                rr      b
4351
                jr      c,rr_11
4352
                inc_error_cnt
4353
rr_11:          rr      c
4354
                jr      nc,rr_12
4355
                inc_error_cnt
4356
rr_12:          ld      a,b
4357
                cp      a,#2a
4358
                jr      z,rr_13
4359
                inc_error_cnt
4360
rr_13:          ld      a,c
4361
                cp      a,#d5
4362
                jr      z,rr_14
4363
                inc_error_cnt
4364
rr_14:          ld      d,data_7f
4365
                ld      e,data_80
4366
                rr      d
4367
                jr      c,rr_15
4368
                inc_error_cnt
4369
rr_15:          rr      e
4370
                jr      nc,rr_16
4371
                inc_error_cnt
4372
rr_16:          ld      a,d
4373
                cp      a,#3f
4374
                jr      z,rr_17
4375
                inc_error_cnt
4376
rr_17:          ld      a,e
4377
                cp      a,#c0
4378
                jr      z,rr_18
4379
                inc_error_cnt
4380
rr_18:          ld      hl,t_var2
4381
                ld      (hl),data_55
4382
                rr      (hl)
4383
                jp      p,rr_19
4384
                inc_error_cnt
4385
rr_19:          jp      po,rr_20
4386
                inc_error_cnt
4387
rr_20:          jr      c,rr_21
4388
                inc_error_cnt
4389
rr_21:          jr      nz,rr_22
4390
                inc_error_cnt
4391
rr_22:          rr      (hl)
4392
                jp      m,rr_23
4393
                inc_error_cnt
4394
rr_23:          jp      pe,rr_24
4395
                inc_error_cnt
4396
rr_24:          jr      nc,rr_25
4397
                inc_error_cnt
4398
rr_25:          ld      a,(hl)
4399
                cp      a,#95
4400
                jr      z,rr_26
4401
                inc_error_cnt
4402
rr_26:          ld      (hl),0
4403
                rr      (hl)
4404
                jr      z,rr_27
4405
                inc_error_cnt
4406
rr_27:          ld      ix,t_var3
4407
                ld      a,data_55
4408
                ld      (ix-2),a
4409
                rr      (ix-2)
4410
                jp      p,rr_28
4411
                inc_error_cnt
4412
rr_28:          jp      po,rr_29
4413
                inc_error_cnt
4414
rr_29:          jr      c,rr_30
4415
                inc_error_cnt
4416
rr_30:          jr      nz,rr_31
4417
                inc_error_cnt
4418
rr_31:          rr      (ix-2)
4419
                jp      m,rr_32
4420
                inc_error_cnt
4421
rr_32:          jp      pe,rr_33
4422
                inc_error_cnt
4423
rr_33:          jr      nc,rr_34
4424
                inc_error_cnt
4425
rr_34:          ld      a,(ix-2)
4426
                cp      a,#95
4427
                jr      z,rr_35
4428
                inc_error_cnt
4429
rr_35:          ld      a,0
4430
                ld      (ix+2),a
4431
                rr      (ix+2)
4432
                jr      z,rr_36
4433
                inc_error_cnt
4434
rr_36:          ld      iy,t_var3
4435
                ld      a,data_55
4436
                ld      (iy+2),a
4437
                rr      (iy+2)
4438
                jp      p,rr_37
4439
                inc_error_cnt
4440
rr_37:          jp      po,rr_38
4441
                inc_error_cnt
4442
rr_38:          jr      c,rr_39
4443
                inc_error_cnt
4444
rr_39:          jr      nz,rr_40
4445
                inc_error_cnt
4446
rr_40:          rr      (iy+2)
4447
                jp      m,rr_41
4448
                inc_error_cnt
4449
rr_41:          jp      pe,rr_42
4450
                inc_error_cnt
4451
rr_42:          jr      nc,rr_43
4452
                inc_error_cnt
4453
rr_43:          ld      a,(iy+2)
4454
                cp      a,#95
4455
                jr      z,rr_44
4456
                inc_error_cnt
4457
rr_44:          ld      a,0
4458
                ld      (iy-1),a
4459
                rr      (iy-1)
4460
                jr      z,sla_0
4461
                inc_error_cnt
4462
sla_0:          ld      a,data_55
4463
                sla     a
4464
                jp      m,sla_1
4465
                inc_error_cnt
4466
sla_1:          jp      pe,sla_2
4467
                inc_error_cnt
4468
sla_2:          jr      nc,sla_3
4469
                inc_error_cnt
4470
sla_3:          jr      nz,sla_4
4471
                inc_error_cnt
4472
sla_4:          sla     a
4473
                jp      p,sla_5
4474
                inc_error_cnt
4475
sla_5:          jp      po,sla_6
4476
                inc_error_cnt
4477
sla_6:          jr      c,sla_7
4478
                inc_error_cnt
4479
sla_7:          cp      a,data_55-1
4480
                jr      z,sla_8
4481
                inc_error_cnt
4482
sla_8:          ld      a,0
4483
                sla     a
4484
                jr      z,sla_9
4485
                inc_error_cnt
4486
sla_9:          ld      b,data_80
4487
                ld      c,data_7f
4488
                sla     b
4489
                jr      c,sla_10
4490
                inc_error_cnt
4491
sla_10:         ld      a,b
4492
                cp      a,0
4493
                jr      z,sla_11
4494
                inc_error_cnt
4495
sla_11:         sla     c
4496
                jp      m,sla_12
4497
                inc_error_cnt
4498
sla_12:         ld      a,c
4499
                cp      a,data_ff-1
4500
                jr      z,sla_13
4501
                inc_error_cnt
4502
sla_13:         ld      d,data_aa
4503
                ld      e,data_55
4504
                sla     d
4505
                jr      c,sla_14
4506
                inc_error_cnt
4507
sla_14:         ld      a,d
4508
                cp      a,data_55-1
4509
                jr      z,sla_15
4510
                inc_error_cnt
4511
sla_15:         sla     e
4512
                jp      m,sla_16
4513
                inc_error_cnt
4514
sla_16:         ld      a,e
4515
                cp      a,data_aa
4516
                jr      z,sla_17
4517
                inc_error_cnt
4518
sla_17:         ld      h,#12      ;bjp was >data_1234
4519
                ld      l,#34      ;bjp was >data_1234
4520
                sla     h
4521
                jp      p,sla_18
4522
                inc_error_cnt
4523
sla_18:         ld      a,h
4524
                cp      a,#24
4525
                jr      z,sla_19
4526
                inc_error_cnt
4527
sla_19:         sla     l
4528
                jp      p,sla_20
4529
                inc_error_cnt
4530
sla_20:         ld      a,l
4531
                cp      a,#68
4532
                jr      z,sla_21
4533
                inc_error_cnt
4534
sla_21:         ld      hl,t_var3
4535
                ld      (hl),data_55
4536
                sla     (hl)
4537
                jp      m,sla_22
4538
                inc_error_cnt
4539
sla_22:         jp      pe,sla_23
4540
                inc_error_cnt
4541
sla_23:         jr      nc,sla_24
4542
                inc_error_cnt
4543
sla_24:         jr      nz,sla_25
4544
                inc_error_cnt
4545
sla_25:         sla     (hl)
4546
                jp      p,sla_26
4547
                inc_error_cnt
4548
sla_26:         jp      po,sla_27
4549
                inc_error_cnt
4550
sla_27:         jr      c,sla_28
4551
                inc_error_cnt
4552
sla_28:         ld      a,(hl)
4553
                cp      a,data_55-1
4554
                jr      z,sla_29
4555
                inc_error_cnt
4556
sla_29:         ld      (hl),0
4557
                sla     (hl)
4558
                jr      z,sla_30
4559
                inc_error_cnt
4560
sla_30:         ld      ix,t_var3
4561
                ld      a,data_55
4562
                ld      (ix-2),a
4563
                sla     (ix-2)
4564
                jp      m,sla_31
4565
                inc_error_cnt
4566
sla_31:         jp      pe,sla_32
4567
                inc_error_cnt
4568
sla_32:         jr      nc,sla_33
4569
                inc_error_cnt
4570
sla_33:         jr      nz,sla_34
4571
                inc_error_cnt
4572
sla_34:         sla     (ix-2)
4573
                jp      p,sla_35
4574
                inc_error_cnt
4575
sla_35:         jp      po,sla_36
4576
                inc_error_cnt
4577
sla_36:         jr      c,sla_37
4578
                inc_error_cnt
4579
sla_37:         ld      a,(ix-2)
4580
                cp      a,data_55-1
4581
                jr      z,sla_38
4582
                inc_error_cnt
4583
sla_38:         ld      a,data_80
4584
                ld      (ix+2),a
4585
                sla     (ix+2)
4586
                jr      z,sla_39
4587
                inc_error_cnt
4588
sla_39:         jr      c,sla_40
4589
                inc_error_cnt
4590
sla_40:         ld      iy,t_var3
4591
                ld      a,data_55
4592
                ld      (iy+2),a
4593
                sla     (iy+2)
4594
                jp      m,sla_41
4595
                inc_error_cnt
4596
sla_41:         jp      pe,sla_42
4597
                inc_error_cnt
4598
sla_42:         jr      nc,sla_43
4599
                inc_error_cnt
4600
sla_43:         jr      nz,sla_44
4601
                inc_error_cnt
4602
sla_44:         sla     (iy+2)
4603
                jp      p,sla_45
4604
                inc_error_cnt
4605
sla_45:         jp      po,sla_46
4606
                inc_error_cnt
4607
sla_46:         jr      c,sla_47
4608
                inc_error_cnt
4609
sla_47:         ld      a,(iy+2)
4610
                cp      a,data_55-1
4611
                jr      z,sla_48
4612
                inc_error_cnt
4613
sla_48:         ld      a,data_80
4614
                ld      (iy-2),a
4615
                sla     (iy-2)
4616
                jr      z,sla_49
4617
                inc_error_cnt
4618
sla_49:         jr      c,sra_0
4619
                inc_error_cnt
4620
sra_0:          ld      a,data_55
4621
                sra     a
4622
                jp      p,sra_1
4623
                inc_error_cnt
4624
sra_1:          jp      po,sra_2
4625
                inc_error_cnt
4626
sra_2:          jr      c,sra_3
4627
                inc_error_cnt
4628
sra_3:          jr      nz,sra_4
4629
                inc_error_cnt
4630
sra_4:          sra     a
4631
                jp      po,sra_5
4632
                inc_error_cnt
4633
sra_5:          jr      nc,sra_6
4634
                inc_error_cnt
4635
sra_6:          sra     a
4636
                jp      pe,sra_7
4637
                inc_error_cnt
4638
sra_7:          cp      a,#0a                   ;data_aa.and.#0f
4639
                jr      z,sra_8
4640
                inc_error_cnt
4641
sra_8:          ld      a,1
4642
                sra     a
4643
                jr      c,sra_9
4644
                inc_error_cnt
4645
sra_9:          jr      z,sra_10
4646
                inc_error_cnt
4647
sra_10:         ld      a,data_80
4648
                sra     a
4649
                jp      m,sra_11
4650
                inc_error_cnt
4651
sra_11:         cp      a,#c0
4652
                jr      z,sra_12
4653
                inc_error_cnt
4654
sra_12:         ld      b,data_7f
4655
                ld      c,data_aa
4656
                sra     b
4657
                jr      c,sra_13
4658
                inc_error_cnt
4659
sra_13:         ld      a,b
4660
                cp      a,#3f
4661
                jr      z,sra_14
4662
                inc_error_cnt
4663
sra_14:         sra     c
4664
                jr      nc,sra_15
4665
                inc_error_cnt
4666
sra_15:         ld      a,c
4667
                cp      a,#d5
4668
                jr      z,sra_16
4669
                inc_error_cnt
4670
sra_16:         ld      d,data_55
4671
                ld      e,data_ff
4672
                sra     d
4673
                jr      c,sra_17
4674
                inc_error_cnt
4675
sra_17:         ld      a,d
4676
                cp      a,#2a
4677
                jr      z,sra_18
4678
                inc_error_cnt
4679
sra_18:         sra     e
4680
                jp      m,sra_19
4681
                inc_error_cnt
4682
sra_19:         ld      a,e
4683
                cp      a,data_ff
4684
                jr      z,sra_20
4685
                inc_error_cnt
4686
sra_20:         ld      h,data_aa
4687
                ld      l,data_7f
4688
                sra     h
4689
                jp      m,sra_21
4690
                inc_error_cnt
4691
sra_21:         ld      a,h
4692
                cp      a,#d5
4693
                jr      z,sra_22
4694
                inc_error_cnt
4695
sra_22:         sra     l
4696
                jr      c,sra_23
4697
                inc_error_cnt
4698
sra_23:         ld      a,l
4699
                cp      a,#3f
4700
                jr      z,sra_24
4701
                inc_error_cnt
4702
sra_24:         ld      hl,t_var1
4703
                ld      (hl),data_55
4704
                sra     (hl)
4705
                jp      p,sra_25
4706
                inc_error_cnt
4707
sra_25:         jp      po,sra_26
4708
                inc_error_cnt
4709
sra_26:         jr      c,sra_27
4710
                inc_error_cnt
4711
sra_27:         jr      nz,sra_28
4712
                inc_error_cnt
4713
sra_28:         sra     (hl)
4714
                jr      nc,sra_29
4715
                inc_error_cnt
4716
sra_29:         sra     (hl)
4717
                jp      pe,sra_30
4718
                inc_error_cnt
4719
sra_30:         ld      a,(hl)
4720
                cp      a,#0a                   ;data_aa.and.#0f
4721
                jr      z,sra_31
4722
                inc_error_cnt
4723
sra_31:         ld      (hl),data_80
4724
                sra     (hl)
4725
                jp      m,sra_32
4726
                inc_error_cnt
4727
sra_32:         ld      a,(hl)
4728
                cp      a,#c0
4729
                jr      z,sra_33
4730
                inc_error_cnt
4731
sra_33:         ld      (hl),1
4732
                sra     (hl)
4733
                jr      c,sra_34
4734
                inc_error_cnt
4735
sra_34:         jr      z,sra_35
4736
                inc_error_cnt
4737
sra_35:         ld      ix,t_var3
4738
                ld      a,data_55
4739
                ld      (ix-2),a
4740
                sra     (ix-2)
4741
                jp      p,sra_36
4742
                inc_error_cnt
4743
sra_36:         jp      po,sra_37
4744
                inc_error_cnt
4745
sra_37:         jr      c,sra_38
4746
                inc_error_cnt
4747
sra_38:         jr      nz,sra_39
4748
                inc_error_cnt
4749
sra_39:         sra     (ix-2)
4750
                jr      nc,sra_40
4751
                inc_error_cnt
4752
sra_40:         sra     (ix-2)
4753
                jp      pe,sra_41
4754
                inc_error_cnt
4755
sra_41:         ld      a,(ix-2)
4756
                cp      a,#0a           ;data_aa.and.#0f
4757
                jr      z,sra_42
4758
                inc_error_cnt
4759
sra_42:         ld      a,data_80
4760
                ld      (ix+2),a
4761
                sra     (ix+2)
4762
                jp      m,sra_43
4763
                inc_error_cnt
4764
sra_43:         ld      a,(ix+2)
4765
                cp      a,#c0
4766
                jr      z,sra_44
4767
                inc_error_cnt
4768
sra_44:         ld      a,1
4769
                ld      (ix-1),a
4770
                sra     (ix-1)
4771
                jr      c,sra_45
4772
                inc_error_cnt
4773
sra_45:         jr      z,sra_46
4774
                inc_error_cnt
4775
sra_46:         ld      iy,t_var3
4776
                ld      a,data_55
4777
                ld      (iy-2),a
4778
                sra     (iy-2)
4779
                jp      p,sra_47
4780
                inc_error_cnt
4781
sra_47:         jp      po,sra_48
4782
                inc_error_cnt
4783
sra_48:         jr      c,sra_49
4784
                inc_error_cnt
4785
sra_49:         jr      nz,sra_50
4786
                inc_error_cnt
4787
sra_50:         sra     (iy-2)
4788
                jr      nc,sra_51
4789
                inc_error_cnt
4790
sra_51:         sra     (iy-2)
4791
                jp      pe,sra_52
4792
                inc_error_cnt
4793
sra_52:         ld      a,(iy-2)
4794
                cp      a,#0a           ;data_aa.and.#0f
4795
                jr      z,sra_53
4796
                inc_error_cnt
4797
sra_53:         ld      a,data_80
4798
                ld      (iy+2),a
4799
                sra     (iy+2)
4800
                jp      m,sra_54
4801
                inc_error_cnt
4802
sra_54:         ld      a,(iy+2)
4803
                cp      a,#c0
4804
                jr      z,sra_55
4805
                inc_error_cnt
4806
sra_55:         ld      a,1
4807
                ld      (iy-1),a
4808
                sra     (iy-1)
4809
                jr      c,sra_56
4810
                inc_error_cnt
4811
sra_56:         jr      z,srl_0
4812
                inc_error_cnt
4813
srl_0:          ld      a,data_55
4814
                srl     a
4815
                jr      c,srl_1
4816
                inc_error_cnt
4817
srl_1:          jp      po,srl_2
4818
                inc_error_cnt
4819
srl_2:          srl     a
4820
                jr      nc,srl_3
4821
                inc_error_cnt
4822
srl_3:          srl     a
4823
                jp      pe,srl_4
4824
                inc_error_cnt
4825
srl_4:          cp      a,#0a                   ;data_aa.and.#0f
4826
                jr      z,srl_5
4827
                inc_error_cnt
4828
srl_5:          ld      a,data_80
4829
                and     a
4830
                jp      m,srl_6
4831
                inc_error_cnt
4832
srl_6:          srl     a
4833
                jp      p,srl_7
4834
                inc_error_cnt
4835
srl_7:          ld      a,2
4836
                srl     a
4837
                jr      nz,srl_8
4838
                inc_error_cnt
4839
srl_8:          srl     a
4840
                jr      z,srl_9
4841
                inc_error_cnt
4842
srl_9:          jr      c,srl_10
4843
                inc_error_cnt
4844
srl_10:         ld      b,data_aa
4845
                srl     b
4846
                jp      p,srl_11
4847
                inc_error_cnt
4848
srl_11:         ld      a,b
4849
                cp      a,data_55
4850
                jr      z,srl_12
4851
                inc_error_cnt
4852
srl_12:         ld      c,data_7f
4853
                srl     c
4854
                jr      c,srl_13
4855
                inc_error_cnt
4856
srl_13:         ld      a,c
4857
                cp      a,#3f
4858
                jr      z,srl_14
4859
                inc_error_cnt
4860
srl_14:         ld      d,data_55
4861
                srl     d
4862
                jr      c,srl_15
4863
                inc_error_cnt
4864
srl_15:         ld      a,d
4865
                cp      a,#2a
4866
                jr      z,srl_16
4867
                inc_error_cnt
4868
srl_16:         ld      e,data_ff
4869
                srl     e
4870
                jr      c,srl_17
4871
                inc_error_cnt
4872
srl_17:         ld      a,e
4873
                cp      a,data_7f
4874
                jr      z,srl_18
4875
                inc_error_cnt
4876
srl_18:         ld      h,#12      ;bjp was >data_1234
4877
                srl     h
4878
                jr      nc,srl_19
4879
                inc_error_cnt
4880
srl_19:         ld      a,h
4881
                cp      a,9
4882
                jr      z,srl_20
4883
                inc_error_cnt
4884
srl_20:         ld      l,#34      ;bjp was >data_1234
4885
                srl     l
4886
                jr      nc,srl_21
4887
                inc_error_cnt
4888
srl_21:         ld      a,l
4889
                cp      a,#1a
4890
                jr      z,srl_22
4891
                inc_error_cnt
4892
srl_22:         ld      hl,t_var1
4893
                ld      (hl),data_55
4894
                srl     (hl)
4895
                jr      c,srl_23
4896
                inc_error_cnt
4897
srl_23:         jp      po,srl_24
4898
                inc_error_cnt
4899
srl_24:         srl     (hl)
4900
                jr      nc,srl_25
4901
                inc_error_cnt
4902
srl_25:         srl     (hl)
4903
                jp      pe,srl_26
4904
                inc_error_cnt
4905
srl_26:         ld      a,(hl)
4906
                cp      a,#0a                   ;data_aa.and.#0f
4907
                jr      z,srl_27
4908
                inc_error_cnt
4909
srl_27:         ld      (hl),data_80
4910
                and     (hl)
4911
                jp      z,srl_28
4912
                inc_error_cnt
4913
srl_28:         srl     (hl)
4914
                jp      p,srl_29
4915
                inc_error_cnt
4916
srl_29:         ld      a,(hl)
4917
                cp      a,#40
4918
                jr      z,srl_30
4919
                inc_error_cnt
4920
srl_30:         ld      (hl),2
4921
                srl     (hl)
4922
                jr      nz,srl_31
4923
                inc_error_cnt
4924
srl_31:         srl     (hl)
4925
                jr      z,srl_32
4926
                inc_error_cnt
4927
srl_32:         jr      c,srl_33
4928
                inc_error_cnt
4929
srl_33:         ld      ix,t_var3
4930
                ld      a,data_55
4931
                ld      (ix+2),a
4932
                srl     (ix+2)
4933
                jr      c,srl_34
4934
                inc_error_cnt
4935
srl_34:         jp      po,srl_35
4936
                inc_error_cnt
4937
srl_35:         srl     (ix+2)
4938
                jr      nc,srl_36
4939
                inc_error_cnt
4940
srl_36:         srl     (ix+2)
4941
                jp      pe,srl_37
4942
                inc_error_cnt
4943
srl_37:         ld      a,(ix+2)
4944
                cp      a,#0a                   ;data_aa.and.#0f
4945
                jr      z,srl_38
4946
                inc_error_cnt
4947
srl_38:         ld      a,data_80
4948
                ld      (ix-2),a
4949
                and     (ix-2)
4950
                jp      m,srl_39
4951
                inc_error_cnt
4952
srl_39:         srl     (ix-2)
4953
                jp      p,srl_40
4954
                inc_error_cnt
4955
srl_40:         ld      a,(ix-2)
4956
                cp      a,#40
4957
                jr      z,srl_41
4958
                inc_error_cnt
4959
srl_41:         ld      a,2
4960
                ld      (ix+1),a
4961
                srl     (ix+1)
4962
                jr      nz,srl_42
4963
                inc_error_cnt
4964
srl_42:         srl     (ix+1)
4965
                jr      z,srl_43
4966
                inc_error_cnt
4967
srl_43:         jr      c,srl_44
4968
                inc_error_cnt
4969
srl_44:         ld      iy,t_var3
4970
                ld      a,data_55
4971
                ld      (iy+2),a
4972
                srl     (iy+2)
4973
                jr      c,srl_45
4974
                inc_error_cnt
4975
srl_45:         jp      po,srl_46
4976
                inc_error_cnt
4977
srl_46:         srl     (iy+2)
4978
                jr      nc,srl_47
4979
                inc_error_cnt
4980
srl_47:         srl     (iy+2)
4981
                jp      pe,srl_48
4982
                inc_error_cnt
4983
srl_48:         ld      a,(iy+2)
4984
                cp      a,#0a                   ;data_aa.and.#0f
4985
                jr      z,srl_49
4986
                inc_error_cnt
4987
srl_49:         ld      a,data_80
4988
                ld      (iy-2),a
4989
                and     (iy-2)
4990
                jp      m,srl_50
4991
                inc_error_cnt
4992
srl_50:         srl     (iy-2)
4993
                jp      p,srl_51
4994
                inc_error_cnt
4995
srl_51:         ld      a,(iy-2)
4996
                cp      a,#40
4997
                jr      z,srl_52
4998
                inc_error_cnt
4999
srl_52:         ld      a,2
5000
                ld      (iy+1),a
5001
                srl     (iy+1)
5002
                jr      nz,srl_53
5003
                inc_error_cnt
5004
srl_53:         srl     (iy+1)
5005
                jr      z,srl_54
5006
                inc_error_cnt
5007
srl_54:         jr      c,rld_0
5008
                inc_error_cnt
5009
rld_0:          ld      hl,t_var5
5010
                ld      a,data_55
5011
                ld      (hl),data_aa
5012
                rld
5013
                jp      p,rld_1
5014
                inc_error_cnt
5015
rld_1:          cp      a,data_55+5
5016
                jr      z,rld_2
5017
                inc_error_cnt
5018
rld_2:          ld      a,(hl)
5019
                cp      a,data_aa-5
5020
                jr      z,rld_3
5021
                inc_error_cnt
5022
rld_3:          ld      (hl),data_7f
5023
                ld      a,data_80
5024
                rld
5025
                jp      m,rld_4
5026
                inc_error_cnt
5027
rld_4:          jp      pe,rld_5
5028
                inc_error_cnt
5029
rld_5:          rld
5030
                jp      po,rld_6
5031
                inc_error_cnt
5032
rld_6:          cp      a,data_80+15
5033
                jr      z,rld_7
5034
                inc_error_cnt
5035
rld_7:          ld      a,(hl)
5036
                cp      a,7
5037
                jr      z,rld_8
5038
                inc_error_cnt
5039
rld_8:          ld      a,#05                   ;data_55.and.#0f
5040
                ld      (hl),#0a                        ;data_aa.and.#0f
5041
                rld
5042
                jr      z,rld_9
5043
                inc_error_cnt
5044
rld_9:          ld      a,(hl)
5045
                cp      a,#a5
5046
                jr      z,rrd_0
5047
                inc_error_cnt
5048
rrd_0:          ld      hl,t_var3
5049
                ld      a,data_55
5050
                ld      (hl),data_aa
5051
                rrd
5052
                jp      p,rrd_1
5053
                inc_error_cnt
5054
rrd_1:          jp      pe,rrd_2
5055
                inc_error_cnt
5056
rrd_2:          jr      nz,rrd_3
5057
                inc_error_cnt
5058
rrd_3:          cp      a,data_55+5
5059
                jr      z,rrd_4
5060
                inc_error_cnt
5061
rrd_4:          ld      a,(hl)
5062
                cp      a,data_55+5
5063
                jr      z,rrd_5
5064
                inc_error_cnt
5065
rrd_5:          ld      (hl),data_7f
5066
                ld      a,data_80
5067
                rrd
5068
                jp      m,rrd_6
5069
                inc_error_cnt
5070
rrd_6:          jp      po,rrd_7
5071
                inc_error_cnt
5072
rrd_7:          cp      a,data_80+15
5073
                jr      z,rrd_8
5074
                inc_error_cnt
5075
rrd_8:          ld      a,(hl)
5076
                cp      a,7
5077
                jr      z,rrd_9
5078
                inc_error_cnt
5079
rrd_9:          ld      a,8
5080
                ld      (hl),0
5081
                rrd
5082
                jr      z,rrd_10
5083
                inc_error_cnt
5084
rrd_10:         ld      a,(hl)
5085
                cp      a,data_80
5086
                jr      z,bit_0
5087
                inc_error_cnt
5088
bit_0:          ld      a,data_ff
5089
                bit     0,a
5090
                jr      nz,bit_1
5091
                inc_error_cnt
5092
bit_1:          bit     1,a
5093
                jr      nz,bit_2
5094
                inc_error_cnt
5095
bit_2:          bit     2,a
5096
                jr      nz,bit_3
5097
                inc_error_cnt
5098
bit_3:          bit     3,a
5099
                jr      nz,bit_4
5100
                inc_error_cnt
5101
bit_4:          bit     4,a
5102
                jr      nz,bit_5
5103
                inc_error_cnt
5104
bit_5:          bit     5,a
5105
                jr      nz,bit_6
5106
                inc_error_cnt
5107
bit_6:          bit     6,a
5108
                jr      nz,bit_7
5109
                inc_error_cnt
5110
bit_7:          bit     7,a
5111
                jr      nz,bit_8
5112
                inc_error_cnt
5113
bit_8:          ld      a,0
5114
                bit     0,a
5115
                jr      z,bit_9
5116
                inc_error_cnt
5117
bit_9:          bit     1,a
5118
                jr      z,bit_10
5119
                inc_error_cnt
5120
bit_10:         bit     2,a
5121
                jr      z,bit_11
5122
                inc_error_cnt
5123
bit_11:         bit     3,a
5124
                jr      z,bit_12
5125
                inc_error_cnt
5126
bit_12:         bit     4,a
5127
                jr      z,bit_13
5128
                inc_error_cnt
5129
bit_13:         bit     5,a
5130
                jr      z,bit_14
5131
                inc_error_cnt
5132
bit_14:         bit     6,a
5133
                jr      z,bit_15
5134
                inc_error_cnt
5135
bit_15:         bit     7,a
5136
                jr      z,bit_16
5137
                inc_error_cnt
5138
bit_16:         ld      b,data_80
5139
                bit     2,b
5140
                jr      z,bit_17
5141
                inc_error_cnt
5142
bit_17:         bit     7,b
5143
                jr      nz,bit_18
5144
                inc_error_cnt
5145
bit_18:         ld      c,data_55
5146
                bit     7,c
5147
                jr      z,bit_19
5148
                inc_error_cnt
5149
bit_19:         bit     0,c
5150
                jr      nz,bit_20
5151
                inc_error_cnt
5152
bit_20:         ld      d,data_aa
5153
                bit     7,d
5154
                jr      nz,bit_21
5155
                inc_error_cnt
5156
bit_21:         bit     4,d
5157
                jr      z,bit_22
5158
                inc_error_cnt
5159
bit_22:         ld      e,data_7f
5160
                bit     7,e
5161
                jr      z,bit_23
5162
                inc_error_cnt
5163
bit_23:         bit     3,e
5164
                jr      nz,bit_24
5165
                inc_error_cnt
5166
bit_24:         ld      h,#12      ;bjp was >data_1234
5167
                bit     4,h
5168
                jr      nz,bit_25
5169
                inc_error_cnt
5170
bit_25:         bit     2,h
5171
                jr      z,bit_26
5172
                inc_error_cnt
5173
bit_26:         ld      l,#34      ;bjp was >data_1234
5174
                bit     3,l
5175
                jr      z,bit_27
5176
                inc_error_cnt
5177
bit_27:         bit     2,l
5178
                jr      nz,bit_28
5179
                inc_error_cnt
5180
bit_28:         ld      hl,t_var4
5181
                ld      (hl),data_55
5182
                bit     0,(hl)
5183
                jr      nz,bit_29
5184
                inc_error_cnt
5185
bit_29:         bit     1,(hl)
5186
                jr      z,bit_30
5187
                inc_error_cnt
5188
bit_30:         bit     2,(hl)
5189
                jr      nz,bit_31
5190
                inc_error_cnt
5191
bit_31:         bit     3,(hl)
5192
                jr      z,bit_32
5193
                inc_error_cnt
5194
bit_32:         bit     4,(hl)
5195
                jr      nz,bit_33
5196
                inc_error_cnt
5197
bit_33:         bit     5,(hl)
5198
                jr      z,bit_34
5199
                inc_error_cnt
5200
bit_34:         bit     6,(hl)
5201
                jr      nz,bit_35
5202
                inc_error_cnt
5203
bit_35:         bit     7,(hl)
5204
                jr      z,bit_36
5205
                inc_error_cnt
5206
bit_36:         ld      ix,t_var3
5207
                ld      a,data_aa
5208
                ld      (ix-2),a
5209
                bit     0,(ix-2)
5210
                jr      z,bit_37
5211
                inc_error_cnt
5212
bit_37:         bit     1,(ix-2)
5213
                jr      nz,bit_38
5214
                inc_error_cnt
5215
bit_38:         bit     2,(ix-2)
5216
                jr      z,bit_39
5217
                inc_error_cnt
5218
bit_39:         bit     3,(ix-2)
5219
                jr      nz,bit_40
5220
                inc_error_cnt
5221
bit_40:         bit     4,(ix-2)
5222
                jr      z,bit_41
5223
                inc_error_cnt
5224
bit_41:         bit     5,(ix-2)
5225
                jr      nz,bit_42
5226
                inc_error_cnt
5227
bit_42:         bit     6,(ix-2)
5228
                jr      z,bit_43
5229
                inc_error_cnt
5230
bit_43:         bit     7,(ix-2)
5231
                jr      nz,bit_44
5232
                inc_error_cnt
5233
bit_44:         ld      iy,t_var3
5234
                ld      a,data_55
5235
                ld      (iy+2),a
5236
                bit     0,(iy+2)
5237
                jr      nz,bit_45
5238
                inc_error_cnt
5239
bit_45:         bit     1,(iy+2)
5240
                jr      z,bit_46
5241
                inc_error_cnt
5242
bit_46:         bit     2,(iy+2)
5243
                jr      nz,bit_47
5244
                inc_error_cnt
5245
bit_47:         bit     3,(iy+2)
5246
                jr      z,bit_48
5247
                inc_error_cnt
5248
bit_48:         bit     4,(iy+2)
5249
                jr      nz,bit_49
5250
                inc_error_cnt
5251
bit_49:         bit     5,(iy+2)
5252
                jr      z,bit_50
5253
                inc_error_cnt
5254
bit_50:         bit     6,(iy+2)
5255
                jr      nz,bit_51
5256
                inc_error_cnt
5257
bit_51:         bit     7,(iy+2)
5258
                jr      z,set_0
5259
                inc_error_cnt
5260
set_0:          ld      a,0
5261
                set     0,a
5262
                set     2,a
5263
                set     4,a
5264
                set     6,a
5265
                cp      a,data_55
5266
                jr      z,set_1
5267
                inc_error_cnt
5268
set_1:          set     1,a
5269
                set     3,a
5270
                set     5,a
5271
                set     7,a
5272
                cp      a,data_ff
5273
                jr      z,set_2
5274
                inc_error_cnt
5275
set_2:          ld      b,0
5276
                set     1,b
5277
                set     3,b
5278
                ld      a,b
5279
                cp      a,#0a                   ;data_aa.and.#0f
5280
                jr      z,set_3
5281
                inc_error_cnt
5282
set_3:          ld      c,0
5283
                set     1,c
5284
                set     4,c
5285
                ld      a,c
5286
                cp      a,#12      ;bjp was >data_1234
5287
                jr      z,set_4
5288
                inc_error_cnt
5289
set_4:          ld      d,0
5290
                set     2,d
5291
                set     4,d
5292
                set     5,d
5293
                ld      a,d
5294
                cp      a,#34      ;bjp was >data_1234
5295
                jr      z,set_5
5296
                inc_error_cnt
5297
set_5:          ld      e,0
5298
                set     7,e
5299
                ld      a,e
5300
                cp      a,data_80
5301
                jr      z,set_6
5302
                inc_error_cnt
5303
set_6:          ld      h,0
5304
                set     0,h
5305
                set     2,h
5306
                set     4,h
5307
                set     6,h
5308
                ld      a,h
5309
                cp      a,data_55
5310
                jr      z,set_7
5311
                inc_error_cnt
5312
set_7:          ld      l,0
5313
                set     1,l
5314
                set     3,l
5315
                set     5,l
5316
                set     7,l
5317
                ld      a,l
5318
                cp      a,data_aa
5319
                jr      z,set_8
5320
                inc_error_cnt
5321
set_8:          ld      hl,t_var5
5322
                ld      (hl),0
5323
                set     0,(hl)
5324
                set     2,(hl)
5325
                set     4,(hl)
5326
                set     6,(hl)
5327
                ld      a,(hl)
5328
                cp      a,data_55
5329
                jr      z,set_9
5330
                inc_error_cnt
5331
set_9:          ld      (hl),0
5332
                set     1,(hl)
5333
                set     3,(hl)
5334
                set     5,(hl)
5335
                set     7,(hl)
5336
                ld      a,(hl)
5337
                cp      a,data_aa
5338
                jr      z,set_10
5339
                inc_error_cnt
5340
set_10:         ld      ix,t_var3
5341
                ld      a,0
5342
                ld      (ix-2),a
5343
                ld      (ix+2),a
5344
                set     0,(ix-2)
5345
                set     2,(ix-2)
5346
                set     4,(ix-2)
5347
                set     6,(ix-2)
5348
                ld      a,(ix-2)
5349
                cp      a,data_55
5350
                jr      z,set_11
5351
                inc_error_cnt
5352
set_11:         set     1,(ix+2)
5353
                set     3,(ix+2)
5354
                set     5,(ix+2)
5355
                set     7,(ix+2)
5356
                ld      a,(ix+2)
5357
                cp      a,data_aa
5358
                jr      z,set_12
5359
                inc_error_cnt
5360
set_12:         ld      iy,t_var3
5361
                ld      a,0
5362
                ld      (iy-1),a
5363
                ld      (iy+1),a
5364
                set     0,(iy-1)
5365
                set     2,(iy-1)
5366
                set     4,(iy-1)
5367
                set     6,(iy-1)
5368
                ld      a,(iy-1)
5369
                cp      a,data_55
5370
                jr      z,set_13
5371
                inc_error_cnt
5372
set_13:         set     1,(iy+1)
5373
                set     3,(iy+1)
5374
                set     5,(iy+1)
5375
                set     7,(iy+1)
5376
                ld      a,(iy+1)
5377
                cp      a,data_aa
5378
                jr      z,res_0
5379
                inc_error_cnt
5380
res_0:          ld      a,data_ff
5381
                res     7,a
5382
                cp      a,data_7f
5383
                jr      z,res_1
5384
                inc_error_cnt
5385
res_1:          res     5,a
5386
                res     3,a
5387
                res     1,a
5388
                cp      a,data_55
5389
                jr      z,res_2
5390
                inc_error_cnt
5391
res_2:          ld      a,data_ff
5392
                res     0,a
5393
                res     2,a
5394
                res     4,a
5395
                res     6,a
5396
                cp      a,data_aa
5397
                jr      z,res_3
5398
                inc_error_cnt
5399
res_3:          ld      b,data_ff
5400
                res     7,b
5401
                ld      a,b
5402
                cp      a,data_7f
5403
                jr      z,res_4
5404
                inc_error_cnt
5405
res_4:          ld      c,data_ff
5406
                res     0,c
5407
                res     1,c
5408
                res     2,c
5409
                res     3,c
5410
                res     4,c
5411
                res     5,c
5412
                res     6,c
5413
                ld      a,c
5414
                cp      a,data_80
5415
                jr      z,res_5
5416
                inc_error_cnt
5417
res_5:          ld      d,data_ff
5418
                res     0,d
5419
                res     2,d
5420
                res     4,d
5421
                res     6,d
5422
                ld      a,d
5423
                cp      a,data_aa
5424
                jr      z,res_6
5425
                inc_error_cnt
5426
res_6:          ld      e,data_ff
5427
                res     1,e
5428
                res     3,e
5429
                res     5,e
5430
                res     7,e
5431
                ld      a,e
5432
                cp      a,data_55
5433
                jr      z,res_7
5434
                inc_error_cnt
5435
res_7:          ld      h,data_ff
5436
                res     0,h
5437
                res     2,h
5438
                res     3,h
5439
                res     5,h
5440
                res     6,h
5441
                res     7,h
5442
                ld      a,h
5443
                cp      a,#12      ;bjp was >data_1234
5444
                jr      z,res_8
5445
                inc_error_cnt
5446
res_8:          ld      l,data_ff
5447
                res     0,l
5448
                res     1,l
5449
                res     3,l
5450
                res     6,l
5451
                res     7,l
5452
                ld      a,l
5453
                cp      a,#34      ;bjp was >data_1234
5454
                jr      z,res_9
5455
                inc_error_cnt
5456
res_9:          ld      hl,t_var3
5457
                ld      (hl),data_ff
5458
                res     0,(hl)
5459
                res     2,(hl)
5460
                res     4,(hl)
5461
                res     6,(hl)
5462
                ld      a,(hl)
5463
                cp      a,data_aa
5464
                jr      z,res_10
5465
                inc_error_cnt
5466
res_10:         res     1,(hl)
5467
                res     3,(hl)
5468
                res     5,(hl)
5469
                res     7,(hl)
5470
                ld      a,(hl)
5471
                cp      a,0
5472
                jr      z,res_11
5473
                inc_error_cnt
5474
res_11:         ld      ix,t_var3
5475
                ld      a,data_ff
5476
                ld      (ix-2),a
5477
                ld      (ix+2),a
5478
                res     1,(ix-2)
5479
                res     3,(ix-2)
5480
                res     5,(ix-2)
5481
                res     7,(ix-2)
5482
                ld      a,(ix-2)
5483
                cp      a,data_55
5484
                jr      z,res_12
5485
                inc_error_cnt
5486
res_12:         res     0,(ix+2)
5487
                res     2,(ix+2)
5488
                res     4,(ix+2)
5489
                res     6,(ix+2)
5490
                ld      a,(ix+2)
5491
                cp      a,data_aa
5492
                jr      z,res_13
5493
                inc_error_cnt
5494
res_13:         ld      iy,t_var3
5495
                ld      a,data_ff
5496
                ld      (iy-1),a
5497
                ld      (iy+1),a
5498
                res     1,(iy-1)
5499
                res     3,(iy-1)
5500
                res     5,(iy-1)
5501
                res     7,(iy-1)
5502
                ld      a,(iy-1)
5503
                cp      a,data_55
5504
                jr      z,res_14
5505
                inc_error_cnt
5506
res_14:         res     0,(iy+1)
5507
                res     2,(iy+1)
5508
                res     4,(iy+1)
5509
                res     6,(iy+1)
5510
                ld      a,(iy+1)
5511
                cp      a,data_aa
5512
                jr      z,jp_0
5513
                inc_error_cnt
5514
jp_0:           jp      jp_1
5515
                nop
5516
                nop
5517
                inc_error_cnt
5518
jp_1:           ld      a,0
5519
                and     a
5520
                jp      z,jp_2
5521
                inc_error_cnt
5522
jp_2:           jp      nc,jp_3
5523
                inc_error_cnt
5524
jp_3:           ld      b,1
5525
                sub     a,b
5526
                jp      nz,jp_4
5527
                inc_error_cnt
5528
jp_4:           jp      c,jp_5
5529
                inc_error_cnt
5530
jp_5:           jp      jp_7
5531
                inc_error_cnt
5532
jp_6:           jp      jr_0
5533
                inc_error_cnt
5534
jp_7:           jp      jp_6
5535
                inc_error_cnt
5536
jr_0:           jr      jr_2
5537
                inc_error_cnt
5538
jr_1:           jr      jr_3
5539
                inc_error_cnt
5540
jr_2:           jr      jr_1
5541
                inc_error_cnt
5542
jr_3:           ld      hl,jp_9
5543
                jp      (hl)
5544
                inc_error_cnt
5545
jp_8:           ld      ix,jp_10
5546
                jp      (ix)
5547
                inc_error_cnt
5548
jp_9:           jp      jp_8
5549
                inc_error_cnt
5550
jp_10:          ld      iy,djnz_0
5551
                jp      (iy)
5552
                inc_error_cnt
5553
djnz_0:         ld      b,5
5554
                ld      a,0
5555
djnz_1:         inc     a
5556
                djnz    djnz_1
5557
                cp      a,5
5558
                jr      z,call_0
5559
                inc_error_cnt
5560
call_0:         ld      a,0
5561
                call    sub1
5562
                cp      a,data_7f
5563
                jr      z,call_1
5564
                inc_error_cnt
5565
call_1:         ld      a,0
5566
                and     a
5567
                call    z,sub2
5568
                cp      a,data_55
5569
                jr      z,call_2
5570
                inc_error_cnt
5571
call_2:         ld      a,data_aa
5572
                and     a
5573
                call    nz,sub3
5574
                cp      a,data_aa+1
5575
                jr      z,call_3
5576
                inc_error_cnt
5577
call_3:         ld      a,0
5578
                cp      a,0
5579
                call    nc,sub4
5580
                cp      a,data_ff
5581
                jr      z,call_4
5582
                inc_error_cnt
5583
call_4:         ld      a,0
5584
                sub     a,1
5585
                call    c,sub5
5586
                cp      a,data_ff-1
5587
                jr      z,call_5
5588
                inc_error_cnt
5589
call_5:         ld      a,data_7f
5590
                sla     a
5591
                call    po,sub6
5592
                cp      a,data_7f
5593
                jr      z,call_6
5594
                inc_error_cnt
5595
call_6:         ld      a,data_aa
5596
                srl     a
5597
                call    pe,sub7
5598
                cp      a,data_aa
5599
                jr      z,call_7
5600
                inc_error_cnt
5601
call_7:         ld      a,data_80
5602
                sra     a
5603
                call    m,sub8
5604
                cp      a,data_80
5605
                jr      z,call_8
5606
                inc_error_cnt
5607
call_8:         ld      a,data_7f
5608
                sra     a
5609
                call    p,sub9
5610
                cp      a,data_7f
5611
                jr      z,rst_0
5612
                inc_error_cnt
5613
rst_0:          rst     #00
5614
                cp      a,1
5615
                jr      z,rst_1
5616
                inc_error_cnt
5617
rst_1:          rst     #08
5618
                cp      a,2
5619
                jr      z,rst_2
5620
                inc_error_cnt
5621
rst_2:          rst     #10
5622
                cp      a,3
5623
                jr      z,rst_3
5624
                inc_error_cnt
5625
rst_3:          rst     #18
5626
                cp      a,4
5627
                jr      z,rst_4
5628
                inc_error_cnt
5629
rst_4:          rst     #20
5630
                cp      a,5
5631
                jr      z,rst_5
5632
                inc_error_cnt
5633
rst_5:          rst     #28
5634
                cp      a,6
5635
                jr      z,rst_6
5636
                inc_error_cnt
5637
rst_6:          rst     #30
5638
                cp      a,7
5639
                jr      z,rst_7
5640
                inc_error_cnt
5641
rst_7:          rst     #38
5642
                cp      a,8
5643
                jr      z,in_0
5644
                inc_error_cnt
5645
in_0:           in      a,(in_port)
5646
                cp      a,data_7f
5647
                jr      z,in_1
5648
                inc_error_cnt
5649
in_1:           ld      c,in_port
5650
                in      a,(c)
5651
                jr      nz,in_2
5652
                inc_error_cnt
5653
in_2:           jp      p,in_3
5654
                inc_error_cnt
5655
in_3:           jp      pe,in_4
5656
                inc_error_cnt
5657
in_4:           cp      a,data_55
5658
                jr      z,in_5
5659
                inc_error_cnt
5660
in_5:           in      a,(c)
5661
                jp      m,in_6
5662
                inc_error_cnt
5663
in_6:           jp      po,in_7
5664
                inc_error_cnt
5665
in_7:           jr      nz,in_8
5666
                inc_error_cnt
5667
in_8:           cp      a,data_80
5668
                jr      z,in_9
5669
                inc_error_cnt
5670
in_9:           in      a,(c)
5671
                jr      z,in_10
5672
                inc_error_cnt
5673
in_10:          in      b,(c)
5674
                jp      m,in_11
5675
                inc_error_cnt
5676
in_11:          ld      a,b
5677
                cp      a,data_ff
5678
                jr      z,in_12
5679
                inc_error_cnt
5680
in_12:          in      d,(c)
5681
                jp      pe,in_13
5682
                inc_error_cnt
5683
in_13:          ld      a,d
5684
                cp      a,data_aa
5685
                jr      z,in_14
5686
                inc_error_cnt
5687
in_14:          in      e,(c)
5688
                jp      p,in_15
5689
                inc_error_cnt
5690
in_15:          ld      a,e
5691
                cp      a,data_7f
5692
                jr      z,in_16
5693
                inc_error_cnt
5694
in_16:          in      h,(c)
5695
                jp      pe,in_17
5696
                inc_error_cnt
5697
in_17:          ld      a,h
5698
                cp      a,data_55
5699
                jr      z,in_18
5700
                inc_error_cnt
5701
in_18:          in      l,(c)
5702
                jp      m,in_19
5703
                inc_error_cnt
5704
in_19:          ld      a,l
5705
                cp      a,data_80
5706
                jr      z,in_20
5707
                inc_error_cnt
5708
in_20:          in      c,(c)
5709
                jr      z,in_21
5710
                inc_error_cnt
5711
in_21:          ld      c,in_port
5712
                ld      b,2
5713
                ld      hl,t_var1
5714
                ini
5715
                jr      nz,in_22
5716
                inc_error_cnt
5717
in_22:          ini
5718
                jr      z,in_23
5719
                inc_error_cnt
5720
in_23:          ld      hl,t_var1
5721
                ld      a,(hl)
5722
                cp      a,data_ff
5723
                jr      z,in_24
5724
                inc_error_cnt
5725
in_24:          inc     hl
5726
                ld      a,(hl)
5727
                cp      a,data_aa
5728
                jr      z,in_25
5729
                inc_error_cnt
5730
in_25:          ld      b,5
5731
                ld      c,in_port
5732
                ld      hl,t_var1
5733
                inir
5734
                jr      z,in_26
5735
                inc_error_cnt
5736
in_26:          ld      hl,t_var1
5737
                ld      a,(hl)
5738
                cp      a,data_7f
5739
                jr      z,in_27
5740
                inc_error_cnt
5741
in_27:          inc     hl
5742
                ld      a,(hl)
5743
                cp      a,data_55
5744
                jr      z,in_28
5745
                inc_error_cnt
5746
in_28:          inc     hl
5747
                ld      a,(hl)
5748
                cp      a,data_80
5749
                jr      z,in_29
5750
                inc_error_cnt
5751
in_29:          inc     hl
5752
                ld      a,(hl)
5753
                cp      a,0
5754
                jr      z,in_30
5755
                inc_error_cnt
5756
in_30:          inc     hl
5757
                ld      a,(hl)
5758
                cp      a,data_ff
5759
                jr      z,in_31
5760
                inc_error_cnt
5761
in_31:          ld      b,2
5762
                ld      c,in_port
5763
                ld      hl,t_var5
5764
                ind
5765
                jr      nz,in_32
5766
                inc_error_cnt
5767
in_32:          ind
5768
                jr      z,in_33
5769
                inc_error_cnt
5770
in_33:          ld      hl,t_var5
5771
                ld      a,(hl)
5772
                cp      a,data_aa
5773
                jr      z,in_34
5774
                inc_error_cnt
5775
in_34:          dec     hl
5776
                ld      a,(hl)
5777
                cp      a,data_7f
5778
                jr      z,in_35
5779
                inc_error_cnt
5780
in_35:          ld      b,5
5781
                ld      c,in_port
5782
                ld      hl,t_var5
5783
                indr
5784
                jr      z,in_36
5785
                inc_error_cnt
5786
in_36:          ld      hl,t_var5
5787
                ld      a,(hl)
5788
                cp      a,data_55
5789
                jr      z,in_37
5790
                inc_error_cnt
5791
in_37:          dec     hl
5792
                ld      a,(hl)
5793
                cp      a,data_80
5794
                jr      z,in_38
5795
                inc_error_cnt
5796
in_38:          dec     hl
5797
                ld      a,(hl)
5798
                cp      a,0
5799
                jr      z,in_39
5800
                inc_error_cnt
5801
in_39:          dec     hl
5802
                ld      a,(hl)
5803
                cp      a,data_ff
5804
                jr      z,in_40
5805
                inc_error_cnt
5806
in_40:          dec     hl
5807
                ld      a,(hl)
5808
                cp      a,data_aa
5809
                jr      z,ldi_0
5810
                inc_error_cnt
5811
ldi_0:          ld      hl,t_var1
5812
                ld      a,#12      ;bjp was >data_1234
5813
                ld      (hl),a
5814
                inc     hl
5815
                ld      a,#34      ;bjp was >data_1234
5816
                ld      (hl),a
5817
                dec     hl
5818
                ld      de,t_var3
5819
                ld      bc,2
5820
                ldi
5821
                jp      pe,ldi_1
5822
                inc_error_cnt
5823
ldi_1:          ldi
5824
                jp      po,ldi_2
5825
                inc_error_cnt
5826
ldi_2:          ld      hl,t_var3
5827
                ld      a,(hl)
5828
                cp      a,#12      ;bjp was >data_1234
5829
                jr      z,ldi_3
5830
                inc_error_cnt
5831
ldi_3:          inc     hl
5832
                ld      a,(hl)
5833
                cp      a,#34      ;bjp was >data_1234
5834
                jr      z,ldir_0
5835
                inc_error_cnt
5836
ldir_0:         ld      hl,var1
5837
                ld      de,t_var1
5838
                ld      bc,5
5839
                ldir
5840
                jp      po,ldir_1
5841
                inc_error_cnt
5842
ldir_1:         ld      hl,t_var1
5843
                ld      a,(hl)
5844
                cp      a,data_ff
5845
                jr      z,ldir_2
5846
                inc_error_cnt
5847
ldir_2:         inc     hl
5848
                ld      a,(hl)
5849
                cp      a,data_55
5850
                jr      z,ldir_3
5851
                inc_error_cnt
5852
ldir_3:         inc     hl
5853
                ld      a,(hl)
5854
                cp      a,data_80
5855
                jr      z,ldir_4
5856
                inc_error_cnt
5857
ldir_4:         inc     hl
5858
                ld      a,(hl)
5859
                cp      a,data_aa
5860
                jr      z,ldir_5
5861
                inc_error_cnt
5862
ldir_5:         inc     hl
5863
                ld      a,(hl)
5864
                cp      a,data_7f
5865
                jr      z,ldd_0
5866
                inc_error_cnt
5867
ldd_0:          ld      hl,t_var5
5868
                ld      a,#12      ;bjp was >data_1234
5869
                ld      (hl),a
5870
                dec     hl
5871
                ld      a,#34      ;bjp was >data_1234
5872
                ld      (hl),a
5873
                inc     hl
5874
                ld      bc,2
5875
                ld      de,t_var3
5876
                ldd
5877
                jp      pe,ldd_1
5878
                inc_error_cnt
5879
ldd_1:          ldd
5880
                jp      po,ldd_2
5881
                inc_error_cnt
5882
ldd_2:          ld      hl,t_var3
5883
                ld      a,(hl)
5884
                cp      a,#12      ;bjp was >data_1234
5885
                jr      z,ldd_3
5886
                inc_error_cnt
5887
ldd_3:          dec     hl
5888
                ld      a,(hl)
5889
                cp      a,#34      ;bjp was >data_1234
5890
                jr      z,lddr_0
5891
                inc_error_cnt
5892
lddr_0:         ld      bc,5
5893
                ld      hl,var5
5894
                ld      de,t_var5
5895
                lddr
5896
                jp      po,lddr_1
5897
                inc_error_cnt
5898
lddr_1:         ld      hl,t_var1
5899
                ld      a,(hl)
5900
                cp      a,data_ff
5901
                jr      z,lddr_2
5902
                inc_error_cnt
5903
lddr_2:         inc     hl
5904
                ld      a,(hl)
5905
                cp      a,data_55
5906
                jr      z,lddr_3
5907
                inc_error_cnt
5908
lddr_3:         inc     hl
5909
                ld      a,(hl)
5910
                cp      a,data_80
5911
                jr      z,lddr_4
5912
                inc_error_cnt
5913
lddr_4:         inc     hl
5914
                ld      a,(hl)
5915
                cp      a,data_aa
5916
                jr      z,lddr_5
5917
                inc_error_cnt
5918
lddr_5:         inc     hl
5919
                ld      a,(hl)
5920
                cp      a,data_7f
5921
                jr      z,cpi_0
5922
                inc_error_cnt
5923
cpi_0:          ld      hl,t_var1
5924
                ld      bc,5
5925
                ld      a,data_7f
5926
                cpi
5927
                jp      pe,cpi_1
5928
                inc_error_cnt
5929
cpi_1:          jp      m,cpi_2
5930
                inc_error_cnt
5931
cpi_2:          jr      nz,cpi_3
5932
                inc_error_cnt
5933
cpi_3:          cpi
5934
                jp      pe,cpi_4
5935
                inc_error_cnt
5936
cpi_4:          jp      p,cpi_5
5937
                inc_error_cnt
5938
cpi_5:          jr      nz,cpi_6
5939
                inc_error_cnt
5940
cpi_6:          cpi
5941
                jp      pe,cpi_7
5942
                inc_error_cnt
5943
cpi_7:          jp      m,cpi_8
5944
                inc_error_cnt
5945
cpi_8:          jr      nz,cpi_9
5946
                inc_error_cnt
5947
cpi_9:          cpi
5948
                jp      pe,cpi_10
5949
                inc_error_cnt
5950
cpi_10:         jp      m,cpi_11
5951
                inc_error_cnt
5952
cpi_11:         jr      nz,cpi_12
5953
                inc_error_cnt
5954
cpi_12:         cpi
5955
                jp      po,cpi_13
5956
                inc_error_cnt
5957
cpi_13:         jp      p,cpi_14
5958
                inc_error_cnt
5959
cpi_14:         jr      z,cpir_0
5960
                inc_error_cnt
5961
cpir_0:         ld      a,data_aa
5962
                ld      hl,var1
5963
                ld      bc,5
5964
                cpir
5965
                jr      z,cpir_1
5966
                inc_error_cnt
5967
cpir_1:         jp      pe,cpir_2
5968
                inc_error_cnt
5969
cpir_2:         ld      a,b
5970
                cp      a,0
5971
                jr      z,cpir_3
5972
                inc_error_cnt
5973
cpir_3:         ld      a,c
5974
                cp      a,1
5975
                jr      z,cpir_4
5976
                inc_error_cnt
5977
cpir_4:         ld      a,data_7f
5978
                ld      hl,var1
5979
                ld      bc,5
5980
                cpir
5981
                jp      po,cpir_5
5982
                inc_error_cnt
5983
cpir_5:         jr      z,cpir_6
5984
                inc_error_cnt
5985
cpir_6:         ld      a,#34      ;bjp was >data_1234
5986
                ld      hl,var1
5987
                ld      bc,5
5988
                cpir
5989
                jp      po,cpir_7
5990
                inc_error_cnt
5991
cpir_7:         jr      nz,cpir_8
5992
                inc_error_cnt
5993
cpir_8:         jp      m,cpir_9
5994
                inc_error_cnt
5995
cpir_9:         ld      a,data_aa
5996
                ld      hl,var1
5997
                ld      bc,3
5998
                cpir
5999
                jp      po,cpir_10
6000
                inc_error_cnt
6001
cpir_10:        jp      p,cpir_11
6002
                inc_error_cnt
6003
cpir_11:        jr      nz,cpd_0
6004
                inc_error_cnt
6005
cpd_0:          ld      a,data_ff
6006
                ld      hl,var5
6007
                ld      bc,5
6008
                cpd
6009
                jp      m,cpd_1
6010
                inc_error_cnt
6011
cpd_1:          jp      pe,cpd_2
6012
                inc_error_cnt
6013
cpd_2:          jr      nz,cpd_3
6014
                inc_error_cnt
6015
cpd_3:          cpd
6016
                jp      p,cpd_4
6017
                inc_error_cnt
6018
cpd_4:          jp      pe,cpd_5
6019
                inc_error_cnt
6020
cpd_5:          jr      nz,cpd_6
6021
                inc_error_cnt
6022
cpd_6:          cpd
6023
                jp      p,cpd_7
6024
                inc_error_cnt
6025
cpd_7:          jp      pe,cpd_8
6026
                inc_error_cnt
6027
cpd_8:          jr      nz,cpd_9
6028
                inc_error_cnt
6029
cpd_9:          cpd
6030
                jp      m,cpd_10
6031
                inc_error_cnt
6032
cpd_10:         jp      pe,cpd_11
6033
                inc_error_cnt
6034
cpd_11:         jr      nz,cpd_12
6035
                inc_error_cnt
6036
cpd_12:         cpd
6037
                jp      p,cpd_13
6038
                inc_error_cnt
6039
cpd_13:         jp      po,cpd_14
6040
                inc_error_cnt
6041
cpd_14:         jr      z,cpdr_0
6042
                inc_error_cnt
6043
cpdr_0:         ld      a,data_80
6044
                ld      hl,var5
6045
                ld      bc,5
6046
                cpdr
6047
                jp      pe,cpdr_1
6048
                inc_error_cnt
6049
cpdr_1:         jp      p,cpdr_2
6050
                inc_error_cnt
6051
cpdr_2:         jr      z,cpdr_3
6052
                inc_error_cnt
6053
cpdr_3:         ld      a,b
6054
                cp      a,0
6055
                jr      z,cpdr_4
6056
                inc_error_cnt
6057
cpdr_4:         ld      a,c
6058
                cp      a,2
6059
                jr      z,cpdr_5
6060
                inc_error_cnt
6061
cpdr_5:         ld      a,#34      ;bjp was >data_1234
6062
                ld      hl,var5
6063
                ld      bc,5
6064
                cpdr
6065
                jp      po,cpdr_6
6066
                inc_error_cnt
6067
cpdr_6:         jr      nz,cpdr_7
6068
                inc_error_cnt
6069
cpdr_7:         jp      p,cpdr_8
6070
                inc_error_cnt
6071
cpdr_8:         ld      a,#34      ;bjp was >data_1234
6072
                ld      hl,var5
6073
                ld      bc,3
6074
                cpdr
6075
                jp      po,cpdr_9
6076
                inc_error_cnt
6077
cpdr_9:         jr      nz,cpdr_10
6078
                inc_error_cnt
6079
cpdr_10:        jp      m,out_0
6080
                inc_error_cnt
6081
;
6082
;the file portfe.xxx must be examined to see if the proper output is generated
6083
;
6084
out_0:          ld      a,#30
6085
                out     (out_port),a
6086
                ld      c,out_port
6087
                ld      a,#31
6088
                out     (c),a
6089
                ld      b,#32
6090
                out     (c),b
6091
                ld      d,#33
6092
                out     (c),d
6093
                ld      e,#34
6094
                out     (c),e
6095
                ld      h,#35
6096
                out     (c),h
6097
                ld      l,#36
6098
                out     (c),l
6099
                out     (c),c                   ;output value divider
6100
outi_0:         ld      a,#31                   ;set up output values
6101
                ld      b,5
6102
                ld      hl,t_var1
6103
outi_1:         ld      (hl),a
6104
                inc     a
6105
                inc     hl
6106
                djnz    outi_1
6107
outi_2:         ld      c,out_port
6108
                ld      b,5
6109
                ld      hl,t_var1
6110
outi_3:         outi
6111
                jr      nz,outi_3
6112
otir_0:         out     (c),c                   ;output value divider
6113
                ld      hl,t_var1
6114
                ld      b,5
6115
                otir
6116
                jr      z,outd_0
6117
                inc_error_cnt
6118
outd_0:         out     (c),c
6119
                ld      hl,t_var5
6120
                ld      b,5
6121
outd_1:         outd
6122
                jr      nz,outd_1
6123
otdr_0:         out     (c),c
6124
                ld      b,5
6125
                ld      hl,t_var5
6126
                otdr
6127
                jr      z,otdr_1
6128
                inc_error_cnt
6129
otdr_1:         out     (c),c
6130
                ld      a,#0d
6131
                out     (c),a
6132
                ld      a,#0a
6133
                out     (c),a
6134 20 bporcella
inc_pass:       ld      a,(pass_count)
6135
                inc     a
6136
                ld      (pass_count),a
6137
                ld      hl,error_cnt
6138
                ld      a,(hl)
6139
                cp      a,0
6140
                jr      z,worked
6141
                failed
6142
                cp      a,0
6143
                jr      nz,stop
6144
;worked:                passed           ;???? bjp
6145
worked:         push    bc
6146
                ld      bc,(pass)
6147
                ld      (message_addr),bc
6148
                ld      bc,(pass+2)
6149
                ld      (message_addr+2),bc
6150
                ld      bc,(pass+4)
6151
                ld      (message_addr+4),bc
6152
                pop     bc
6153
 
6154
 
6155
stop:           halt
6156
                nop
6157
                nop
6158
                nop
6159
;
6160
;subroutine 1, must load a with #7f
6161
;
6162
sub1:           ld      a,data_7f
6163
                ret
6164
;
6165
;
6166
;subroutine 2, must load a with #55
6167
;
6168
sub2:           ld      a,data_55
6169
                cp      a,data_55
6170
                ret     z
6171
;
6172
;subroutine 3, increments a
6173
;
6174
sub3:           inc     a
6175
                and     a
6176
                ret     nz
6177
;
6178
;subroutine 4, subtracts 1 from a
6179
;
6180
sub4:           sub     a,1
6181
                ret     c
6182
;
6183
;subroutine 5, subtracts 1 from a
6184
;
6185
sub5:           sub     a,1
6186
                ret     nc
6187
;
6188
;subroutine 6, shifts a right logically
6189
;
6190
sub6:           srl     a
6191
                ret     po
6192
;
6193
;subroutine 7, shifts a left arithmetically
6194
;
6195
sub7:           sla     a
6196
                ret     pe
6197
;
6198
;subroutine 8, shifts a left arithmetically
6199
;
6200
sub8:           sla     a
6201
                ret     m
6202
;
6203
;subroutine 9, rotates a left
6204
;
6205
sub9:           rl      a
6206
                ret     p
6207
;
6208
;restart 0 routine
6209
;
6210
rst_0000_1:     ld      a,(pass_count)
6211
                or      a
6212
                jp      nz,start
6213
                ld      a,1
6214
                ret
6215
;
6216
;               data
6217
;
6218
var1:           db      data_ff
6219
var2:           db      data_55
6220
var3:           db      data_80
6221
var4:           db      data_aa
6222
var5:           db      data_7f
6223
;
6224
 
6225
                org     #7000
6226
t_var1:         db      0
6227
t_var2:         db      0
6228
t_var3:         db      0
6229
t_var4:         db      0
6230
t_var5:         db      0
6231
;
6232
w_var1:         dw      data_1234
6233
w_var2:         dw      data_55aa
6234
w_var3:         dw      data_7fff
6235
w_var4:         dw      data_8000
6236
w_var5:         dw      data_aa55
6237
w_var6:         dw      data_ffff
6238
;
6239
tw_var1:        dw      0
6240
tw_var2:        dw      0
6241
tw_var3:        dw      0
6242
tw_var4:        dw      0
6243
tw_var5:        dw      0
6244
tw_var6:        dw      0
6245
tw_var7:        dw      0
6246
;
6247
error_cnt:      db      0
6248
pass_count:     db      1
6249
;
6250
                org     #7100
6251
stack:          ds      128
6252
stack_end:      equ     $
6253
;
6254
                end start
6255
 
6256
 
6257
 
6258
 
6259
 
6260
 
6261
 
6262
 
6263
 
6264
 
6265
 
6266
 
6267
 
6268
 
6269
 
6270
 
6271
 
6272
 
6273
 
6274
 
6275
 
6276
 
6277
 
6278
 
6279
 
6280
 
6281
 
6282
 
6283
 
6284
 
6285
 
6286
 
6287
 
6288
 
6289
 
6290
 
6291
 
6292
 
6293
 
6294
 
6295
 
6296
 
6297
 
6298
 
6299
 
6300
 
6301
 
6302
 
6303
 
6304
 
6305
 
6306
 
6307
 
6308
 
6309
 
6310
 
6311
 
6312
 
6313
 
6314
 
6315
 
6316
 
6317
 
6318
 
6319
 
6320
 
6321
 
6322
 
6323
 
6324
 
6325
 
6326
 
6327
 
6328
 
6329
 
6330
 
6331
 
6332
 
6333
 
6334
 
6335
 
6336
 
6337
 
6338
 
6339
 
6340
 
6341
 
6342
 
6343
 
6344
 
6345
 
6346
 
6347
 
6348
 
6349
 
6350
 
6351
 
6352
 
6353
 
6354
 
6355
 
6356
 
6357
 
6358
 
6359
 
6360
 
6361
 
6362
 
6363
 
6364
 
6365
 
6366
 
6367
 
6368
 
6369
 
6370
 
6371
 
6372
 
6373
 
6374
 
6375
 
6376
 
6377
 
6378
 
6379
 
6380
 
6381
 
6382
 
6383
 
6384
 
6385
 
6386
 
6387
 
6388
 
6389
 
6390
 
6391
 
6392
 
6393
 
6394
 
6395
 
6396
 
6397
 
6398
 
6399
 
6400
 
6401
 
6402
 
6403
 
6404
 
6405
 
6406
 
6407
 
6408
 
6409
 
6410
 
6411
 
6412
 
6413
 
6414
 
6415
 
6416
 
6417
 
6418
 
6419
 
6420
 
6421
 
6422
 
6423
 
6424
 
6425
 
6426
 
6427
 
6428
 
6429
 
6430
 
6431
 
6432
 
6433
 
6434
 
6435
 
6436
 
6437
 
6438
 
6439
 
6440
 
6441
 
6442
 
6443
 
6444
 
6445
 
6446
 
6447
 
6448
 
6449
 
6450
 
6451
 
6452
 
6453
 
6454
 
6455
 
6456
 
6457
 
6458
 
6459
 
6460
 
6461
 
6462
 
6463
 
6464
 
6465
 
6466
 
6467
 
6468
 
6469
 
6470
 
6471
 
6472
 
6473
 
6474
 
6475
 
6476
 
6477
 
6478
 
6479
 
6480
 
6481
 
6482
 
6483
 
6484
 
6485
 
6486
 
6487
 
6488
 
6489
 
6490
 
6491
 
6492
 
6493
 
6494
 
6495
 
6496
 
6497
 
6498
 
6499
 
6500
 
6501
 
6502
 
6503
 
6504
 
6505
 
6506
 
6507
 
6508
 
6509
 
6510
 
6511
 
6512
 
6513
 
6514
 
6515
 
6516
 
6517
 
6518
 
6519
 
6520
 
6521
 
6522
 
6523
 
6524
 
6525
 
6526
 
6527
 
6528
 
6529
 
6530
 
6531
 
6532
 
6533
 
6534
 
6535
 
6536
 
6537
 
6538
 
6539
 
6540
 
6541
 
6542
 
6543
 
6544
 
6545
 
6546
 
6547
 
6548
 
6549
 
6550
 
6551
 
6552
 
6553
 
6554
 
6555
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.