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

Subversion Repositories tv80

[/] [tv80/] [branches/] [s80_env_devel/] [tests/] [tvs80/] [tvs80tst.asm] - Blame information for rev 15

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

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

powered by: WebSVN 2.1.0

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