7 int cpu_6809_ea_src[0x10][2] = {
8 {CPU_6809_EA_D, CPU_6809_EA_D + 1},
9 {CPU_6809_EA_X, CPU_6809_EA_X + 1},
10 {CPU_6809_EA_Y, CPU_6809_EA_Y + 1},
11 {CPU_6809_EA_U, CPU_6809_EA_U + 1},
12 {CPU_6809_EA_S, CPU_6809_EA_S + 1},
13 {CPU_6809_EA_PC, CPU_6809_EA_PC + 1},
14 {CPU_6809_EA_M1, CPU_6809_EA_M1},
15 {CPU_6809_EA_M1, CPU_6809_EA_M1},
16 {CPU_6809_EA_A, CPU_6809_EA_M1},
17 {CPU_6809_EA_B, CPU_6809_EA_M1},
18 {CPU_6809_EA_CC, CPU_6809_EA_CC},
19 {CPU_6809_EA_DP, CPU_6809_EA_DP},
20 {CPU_6809_EA_M1, CPU_6809_EA_M1},
21 {CPU_6809_EA_M1, CPU_6809_EA_M1},
22 {CPU_6809_EA_M1, CPU_6809_EA_M1},
23 {CPU_6809_EA_M1, CPU_6809_EA_M1},
26 int cpu_6809_ea_dest[0x10][2] = {
27 {CPU_6809_EA_D, CPU_6809_EA_D + 1},
28 {CPU_6809_EA_X, CPU_6809_EA_X + 1},
29 {CPU_6809_EA_Y, CPU_6809_EA_Y + 1},
30 {CPU_6809_EA_U, CPU_6809_EA_U + 1},
31 {CPU_6809_EA_S, CPU_6809_EA_S + 1},
32 {CPU_6809_EA_PC, CPU_6809_EA_PC + 1},
33 {CPU_6809_EA_SINK, CPU_6809_EA_SINK},
34 {CPU_6809_EA_SINK, CPU_6809_EA_SINK},
35 {CPU_6809_EA_A, CPU_6809_EA_SINK},
36 {CPU_6809_EA_B, CPU_6809_EA_SINK},
37 {CPU_6809_EA_CC, CPU_6809_EA_SINK},
38 {CPU_6809_EA_DP, CPU_6809_EA_SINK},
39 {CPU_6809_EA_SINK, CPU_6809_EA_SINK},
40 {CPU_6809_EA_SINK, CPU_6809_EA_SINK},
41 {CPU_6809_EA_SINK, CPU_6809_EA_SINK},
42 {CPU_6809_EA_SINK, CPU_6809_EA_SINK},
47 struct cpu_6809 *self,
48 int (*read_byte)(void *context, int addr),
49 void *read_byte_context,
50 void (*write_byte)(void *context, int addr, int data),
51 void *write_byte_context
53 memset(self, 0, sizeof(struct cpu_6809));
54 self->regs.byte.m1 = 0xff;
55 self->read_byte = read_byte;
56 self->read_byte_context = read_byte_context;
57 self->write_byte = write_byte;
58 self->write_byte_context = write_byte_context;
61 void cpu_6809_reset(struct cpu_6809 *self) {
62 self->regs.word.pc = cpu_6809_read_word(self, CPU_6809_RESET_VECTOR);
63 self->regs.byte.iflags = 0;
64 self->regs.bit.ff = true;
65 self->regs.bit._if = true;
69 int cpu_6809_addressing_mode(struct cpu_6809 *self) {
71 switch (cpu_6809_fetch_byte(self)) {
73 ea = (0 + self->regs.word.x) & 0xffff;
76 ea = (1 + self->regs.word.x) & 0xffff;
79 ea = (2 + self->regs.word.x) & 0xffff;
82 ea = (3 + self->regs.word.x) & 0xffff;
85 ea = (4 + self->regs.word.x) & 0xffff;
88 ea = (5 + self->regs.word.x) & 0xffff;
91 ea = (6 + self->regs.word.x) & 0xffff;
94 ea = (7 + self->regs.word.x) & 0xffff;
97 ea = (8 + self->regs.word.x) & 0xffff;
100 ea = (9 + self->regs.word.x) & 0xffff;
103 ea = (10 + self->regs.word.x) & 0xffff;
106 ea = (11 + self->regs.word.x) & 0xffff;
109 ea = (12 + self->regs.word.x) & 0xffff;
112 ea = (13 + self->regs.word.x) & 0xffff;
115 ea = (14 + self->regs.word.x) & 0xffff;
118 ea = (15 + self->regs.word.x) & 0xffff;
121 ea = (-16 + self->regs.word.x) & 0xffff;
124 ea = (-15 + self->regs.word.x) & 0xffff;
127 ea = (-14 + self->regs.word.x) & 0xffff;
130 ea = (-13 + self->regs.word.x) & 0xffff;
133 ea = (-12 + self->regs.word.x) & 0xffff;
136 ea = (-11 + self->regs.word.x) & 0xffff;
139 ea = (-10 + self->regs.word.x) & 0xffff;
142 ea = (-9 + self->regs.word.x) & 0xffff;
145 ea = (-8 + self->regs.word.x) & 0xffff;
148 ea = (-7 + self->regs.word.x) & 0xffff;
151 ea = (-6 + self->regs.word.x) & 0xffff;
154 ea = (-5 + self->regs.word.x) & 0xffff;
157 ea = (-4 + self->regs.word.x) & 0xffff;
160 ea = (-3 + self->regs.word.x) & 0xffff;
163 ea = (-2 + self->regs.word.x) & 0xffff;
166 ea = (-1 + self->regs.word.x) & 0xffff;
169 ea = (0 + self->regs.word.y) & 0xffff;
172 ea = (1 + self->regs.word.y) & 0xffff;
175 ea = (2 + self->regs.word.y) & 0xffff;
178 ea = (3 + self->regs.word.y) & 0xffff;
181 ea = (4 + self->regs.word.y) & 0xffff;
184 ea = (5 + self->regs.word.y) & 0xffff;
187 ea = (6 + self->regs.word.y) & 0xffff;
190 ea = (7 + self->regs.word.y) & 0xffff;
193 ea = (8 + self->regs.word.y) & 0xffff;
196 ea = (9 + self->regs.word.y) & 0xffff;
199 ea = (10 + self->regs.word.y) & 0xffff;
202 ea = (11 + self->regs.word.y) & 0xffff;
205 ea = (12 + self->regs.word.y) & 0xffff;
208 ea = (13 + self->regs.word.y) & 0xffff;
211 ea = (14 + self->regs.word.y) & 0xffff;
214 ea = (15 + self->regs.word.y) & 0xffff;
217 ea = (-16 + self->regs.word.y) & 0xffff;
220 ea = (-15 + self->regs.word.y) & 0xffff;
223 ea = (-14 + self->regs.word.y) & 0xffff;
226 ea = (-13 + self->regs.word.y) & 0xffff;
229 ea = (-12 + self->regs.word.y) & 0xffff;
232 ea = (-11 + self->regs.word.y) & 0xffff;
235 ea = (-10 + self->regs.word.y) & 0xffff;
238 ea = (-9 + self->regs.word.y) & 0xffff;
241 ea = (-8 + self->regs.word.y) & 0xffff;
244 ea = (-7 + self->regs.word.y) & 0xffff;
247 ea = (-6 + self->regs.word.y) & 0xffff;
250 ea = (-5 + self->regs.word.y) & 0xffff;
253 ea = (-4 + self->regs.word.y) & 0xffff;
256 ea = (-3 + self->regs.word.y) & 0xffff;
259 ea = (-2 + self->regs.word.y) & 0xffff;
262 ea = (-1 + self->regs.word.y) & 0xffff;
265 ea = (0 + self->regs.word.u) & 0xffff;
268 ea = (1 + self->regs.word.u) & 0xffff;
271 ea = (2 + self->regs.word.u) & 0xffff;
274 ea = (3 + self->regs.word.u) & 0xffff;
277 ea = (4 + self->regs.word.u) & 0xffff;
280 ea = (5 + self->regs.word.u) & 0xffff;
283 ea = (6 + self->regs.word.u) & 0xffff;
286 ea = (7 + self->regs.word.u) & 0xffff;
289 ea = (8 + self->regs.word.u) & 0xffff;
292 ea = (9 + self->regs.word.u) & 0xffff;
295 ea = (10 + self->regs.word.u) & 0xffff;
298 ea = (11 + self->regs.word.u) & 0xffff;
301 ea = (12 + self->regs.word.u) & 0xffff;
304 ea = (13 + self->regs.word.u) & 0xffff;
307 ea = (14 + self->regs.word.u) & 0xffff;
310 ea = (15 + self->regs.word.u) & 0xffff;
313 ea = (-16 + self->regs.word.u) & 0xffff;
316 ea = (-15 + self->regs.word.u) & 0xffff;
319 ea = (-14 + self->regs.word.u) & 0xffff;
322 ea = (-13 + self->regs.word.u) & 0xffff;
325 ea = (-12 + self->regs.word.u) & 0xffff;
328 ea = (-11 + self->regs.word.u) & 0xffff;
331 ea = (-10 + self->regs.word.u) & 0xffff;
334 ea = (-9 + self->regs.word.u) & 0xffff;
337 ea = (-8 + self->regs.word.u) & 0xffff;
340 ea = (-7 + self->regs.word.u) & 0xffff;
343 ea = (-6 + self->regs.word.u) & 0xffff;
346 ea = (-5 + self->regs.word.u) & 0xffff;
349 ea = (-4 + self->regs.word.u) & 0xffff;
352 ea = (-3 + self->regs.word.u) & 0xffff;
355 ea = (-2 + self->regs.word.u) & 0xffff;
358 ea = (-1 + self->regs.word.u) & 0xffff;
361 ea = (0 + self->regs.word.s) & 0xffff;
364 ea = (1 + self->regs.word.s) & 0xffff;
367 ea = (2 + self->regs.word.s) & 0xffff;
370 ea = (3 + self->regs.word.s) & 0xffff;
373 ea = (4 + self->regs.word.s) & 0xffff;
376 ea = (5 + self->regs.word.s) & 0xffff;
379 ea = (6 + self->regs.word.s) & 0xffff;
382 ea = (7 + self->regs.word.s) & 0xffff;
385 ea = (8 + self->regs.word.s) & 0xffff;
388 ea = (9 + self->regs.word.s) & 0xffff;
391 ea = (10 + self->regs.word.s) & 0xffff;
394 ea = (11 + self->regs.word.s) & 0xffff;
397 ea = (12 + self->regs.word.s) & 0xffff;
400 ea = (13 + self->regs.word.s) & 0xffff;
403 ea = (14 + self->regs.word.s) & 0xffff;
406 ea = (15 + self->regs.word.s) & 0xffff;
409 ea = (-16 + self->regs.word.s) & 0xffff;
412 ea = (-15 + self->regs.word.s) & 0xffff;
415 ea = (-14 + self->regs.word.s) & 0xffff;
418 ea = (-13 + self->regs.word.s) & 0xffff;
421 ea = (-12 + self->regs.word.s) & 0xffff;
424 ea = (-11 + self->regs.word.s) & 0xffff;
427 ea = (-10 + self->regs.word.s) & 0xffff;
430 ea = (-9 + self->regs.word.s) & 0xffff;
433 ea = (-8 + self->regs.word.s) & 0xffff;
436 ea = (-7 + self->regs.word.s) & 0xffff;
439 ea = (-6 + self->regs.word.s) & 0xffff;
442 ea = (-5 + self->regs.word.s) & 0xffff;
445 ea = (-4 + self->regs.word.s) & 0xffff;
448 ea = (-3 + self->regs.word.s) & 0xffff;
451 ea = (-2 + self->regs.word.s) & 0xffff;
454 ea = (-1 + self->regs.word.s) & 0xffff;
457 ea = self->regs.word.x++;
460 ea = self->regs.word.x;
461 self->regs.word.x += 2;
464 ea = --self->regs.word.x;
467 self->regs.word.x -= 2;
468 ea = self->regs.word.x;
471 ea = self->regs.word.x;
474 ea = ((int8_t)self->regs.byte.b + self->regs.word.x) & 0xffff;
477 ea = ((int8_t)self->regs.byte.a + self->regs.word.x) & 0xffff;
480 cpu_6809_illegal_opcode(self);
482 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.x) & 0xffff;
485 ea = (cpu_6809_fetch_word(self) + self->regs.word.x) & 0xffff;
488 cpu_6809_illegal_opcode(self);
490 ea = (self->regs.word.d + self->regs.word.x) & 0xffff;
493 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.pc) & 0xffff;
496 ea = (cpu_6809_fetch_word(self) + self->regs.word.pc) & 0xffff;
499 cpu_6809_illegal_opcode(self);
501 cpu_6809_illegal_opcode(self);
503 cpu_6809_illegal_opcode(self);
505 ea = self->regs.word.x;
506 self->regs.word.x += 2;
509 cpu_6809_illegal_opcode(self);
511 self->regs.word.x -= 2;
512 ea = self->regs.word.x;
515 ea = self->regs.word.x;
518 ea = ((int8_t)self->regs.byte.b + self->regs.word.x) & 0xffff;
521 ea = ((int8_t)self->regs.byte.a + self->regs.word.x) & 0xffff;
524 cpu_6809_illegal_opcode(self);
526 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.x) & 0xffff;
529 ea = (cpu_6809_fetch_word(self) + self->regs.word.x) & 0xffff;
532 cpu_6809_illegal_opcode(self);
534 ea = (self->regs.word.d + self->regs.word.x) & 0xffff;
537 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.pc) & 0xffff;
540 ea = (cpu_6809_fetch_word(self) + self->regs.word.pc) & 0xffff;
543 cpu_6809_illegal_opcode(self);
545 ea = cpu_6809_fetch_word(self);
548 ea = self->regs.word.y++;
551 ea = self->regs.word.y;
552 self->regs.word.y += 2;
555 ea = --self->regs.word.y;
558 self->regs.word.y -= 2;
559 ea = self->regs.word.y;
562 ea = self->regs.word.y;
565 ea = ((int8_t)self->regs.byte.b + self->regs.word.y) & 0xffff;
568 ea = ((int8_t)self->regs.byte.a + self->regs.word.y) & 0xffff;
571 cpu_6809_illegal_opcode(self);
573 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.y) & 0xffff;
576 ea = (cpu_6809_fetch_word(self) + self->regs.word.y) & 0xffff;
579 cpu_6809_illegal_opcode(self);
581 ea = (self->regs.word.d + self->regs.word.y) & 0xffff;
584 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.pc) & 0xffff;
587 ea = (cpu_6809_fetch_word(self) + self->regs.word.pc) & 0xffff;
590 cpu_6809_illegal_opcode(self);
592 cpu_6809_illegal_opcode(self);
594 cpu_6809_illegal_opcode(self);
596 ea = self->regs.word.y;
597 self->regs.word.y += 2;
600 cpu_6809_illegal_opcode(self);
602 self->regs.word.y -= 2;
603 ea = self->regs.word.y;
606 ea = self->regs.word.y;
609 ea = ((int8_t)self->regs.byte.b + self->regs.word.y) & 0xffff;
612 ea = ((int8_t)self->regs.byte.a + self->regs.word.y) & 0xffff;
615 cpu_6809_illegal_opcode(self);
617 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.y) & 0xffff;
620 ea = (cpu_6809_fetch_word(self) + self->regs.word.y) & 0xffff;
623 cpu_6809_illegal_opcode(self);
625 ea = (self->regs.word.d + self->regs.word.y) & 0xffff;
628 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.pc) & 0xffff;
631 ea = (cpu_6809_fetch_word(self) + self->regs.word.pc) & 0xffff;
634 cpu_6809_illegal_opcode(self);
636 cpu_6809_illegal_opcode(self);
638 ea = self->regs.word.u++;
641 ea = self->regs.word.u;
642 self->regs.word.u += 2;
645 ea = --self->regs.word.u;
648 self->regs.word.u -= 2;
649 ea = self->regs.word.u;
652 ea = self->regs.word.u;
655 ea = ((int8_t)self->regs.byte.b + self->regs.word.u) & 0xffff;
658 ea = ((int8_t)self->regs.byte.a + self->regs.word.u) & 0xffff;
661 cpu_6809_illegal_opcode(self);
663 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.u) & 0xffff;
666 ea = (cpu_6809_fetch_word(self) + self->regs.word.u) & 0xffff;
669 cpu_6809_illegal_opcode(self);
671 ea = (self->regs.word.d + self->regs.word.u) & 0xffff;
674 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.pc) & 0xffff;
677 ea = (cpu_6809_fetch_word(self) + self->regs.word.pc) & 0xffff;
680 cpu_6809_illegal_opcode(self);
682 cpu_6809_illegal_opcode(self);
684 cpu_6809_illegal_opcode(self);
686 ea = self->regs.word.u;
687 self->regs.word.u += 2;
690 cpu_6809_illegal_opcode(self);
692 self->regs.word.u -= 2;
693 ea = self->regs.word.u;
696 ea = self->regs.word.u;
699 ea = ((int8_t)self->regs.byte.b + self->regs.word.u) & 0xffff;
702 ea = ((int8_t)self->regs.byte.a + self->regs.word.u) & 0xffff;
705 cpu_6809_illegal_opcode(self);
707 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.u) & 0xffff;
710 ea = (cpu_6809_fetch_word(self) + self->regs.word.u) & 0xffff;
713 cpu_6809_illegal_opcode(self);
715 ea = (self->regs.word.d + self->regs.word.u) & 0xffff;
718 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.pc) & 0xffff;
721 ea = (cpu_6809_fetch_word(self) + self->regs.word.pc) & 0xffff;
724 cpu_6809_illegal_opcode(self);
726 cpu_6809_illegal_opcode(self);
728 ea = self->regs.word.s++;
731 ea = self->regs.word.s;
732 self->regs.word.s += 2;
735 ea = --self->regs.word.s;
738 self->regs.word.s -= 2;
739 ea = self->regs.word.s;
742 ea = self->regs.word.s;
745 ea = ((int8_t)self->regs.byte.b + self->regs.word.s) & 0xffff;
748 ea = ((int8_t)self->regs.byte.a + self->regs.word.s) & 0xffff;
751 cpu_6809_illegal_opcode(self);
753 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.s) & 0xffff;
756 ea = (cpu_6809_fetch_word(self) + self->regs.word.s) & 0xffff;
759 cpu_6809_illegal_opcode(self);
761 ea = (self->regs.word.d + self->regs.word.s) & 0xffff;
764 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.pc) & 0xffff;
767 ea = (cpu_6809_fetch_word(self) + self->regs.word.pc) & 0xffff;
770 cpu_6809_illegal_opcode(self);
772 cpu_6809_illegal_opcode(self);
774 cpu_6809_illegal_opcode(self);
776 ea = self->regs.word.s;
777 self->regs.word.s += 2;
780 cpu_6809_illegal_opcode(self);
782 self->regs.word.s -= 2;
783 ea = self->regs.word.s;
786 ea = self->regs.word.s;
789 ea = ((int8_t)self->regs.byte.b + self->regs.word.s) & 0xffff;
792 ea = ((int8_t)self->regs.byte.a + self->regs.word.s) & 0xffff;
795 cpu_6809_illegal_opcode(self);
797 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.s) & 0xffff;
800 ea = (cpu_6809_fetch_word(self) + self->regs.word.s) & 0xffff;
803 cpu_6809_illegal_opcode(self);
805 ea = (self->regs.word.d + self->regs.word.s) & 0xffff;
808 ea = ((int8_t)cpu_6809_fetch_byte(self) + self->regs.word.pc) & 0xffff;
811 ea = (cpu_6809_fetch_word(self) + self->regs.word.pc) & 0xffff;
813 ea = cpu_6809_read_word(self, ea);
816 cpu_6809_illegal_opcode(self);
818 cpu_6809_illegal_opcode(self);
823 void cpu_6809_execute(struct cpu_6809 *self) {
824 if (self->regs.bit.nmi_pending) {
825 self->regs.bit.nmi_pending = false;
826 if (!self->regs.bit.wai_flag)
827 cpu_6809_cwai(self, 0);
828 self->regs.bit.wai_flag = false;
829 self->regs.word.pc = cpu_6809_read_word(self, CPU_6809_NMI_VECTOR);
830 self->regs.bit._if = true;
834 if (self->regs.bit.irq_pending && !self->regs.bit._if) {
835 self->regs.bit.irq_pending = false;
836 if (!self->regs.bit.wai_flag)
837 cpu_6809_cwai(self, 0);
838 self->regs.bit.wai_flag = false;
839 self->regs.word.pc = cpu_6809_read_word(self, CPU_6809_IRQ_VECTOR);
840 self->regs.bit._if = true;
844 if (self->regs.bit.wai_flag) {
849 switch (cpu_6809_fetch_byte(self)) {
851 cpu_6809_neg(self, cpu_6809_ea_direct(self));
854 cpu_6809_illegal_opcode(self);
857 cpu_6809_illegal_opcode(self);
860 cpu_6809_com(self, cpu_6809_ea_direct(self));
863 cpu_6809_lsr(self, cpu_6809_ea_direct(self));
866 cpu_6809_illegal_opcode(self);
869 cpu_6809_ror(self, cpu_6809_ea_direct(self));
872 cpu_6809_asr(self, cpu_6809_ea_direct(self));
875 cpu_6809_asl(self, cpu_6809_ea_direct(self));
878 cpu_6809_rol(self, cpu_6809_ea_direct(self));
881 cpu_6809_dec_byte(self, cpu_6809_ea_direct(self));
884 cpu_6809_illegal_opcode(self);
887 cpu_6809_inc_byte(self, cpu_6809_ea_direct(self));
890 cpu_6809_tst(self, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
893 cpu_6809_jmp(self, cpu_6809_ea_direct(self));
896 cpu_6809_clr(self, cpu_6809_ea_direct(self));
899 cpu_6809_execute_10(self);
902 cpu_6809_execute_11(self);
911 cpu_6809_illegal_opcode(self);
914 cpu_6809_illegal_opcode(self);
917 cpu_6809_lbra(self, true, cpu_6809_ea_long_relative(self));
920 cpu_6809_lbsr(self, cpu_6809_ea_long_relative(self));
923 cpu_6809_illegal_opcode(self);
929 cpu_6809_orcc(self, cpu_6809_fetch_byte(self));
932 cpu_6809_illegal_opcode(self);
935 cpu_6809_andcc(self, cpu_6809_fetch_byte(self));
941 cpu_6809_exg(self, cpu_6809_fetch_byte(self));
944 cpu_6809_tfr(self, cpu_6809_fetch_byte(self));
947 cpu_6809_bra(self, true, cpu_6809_ea_relative(self));
950 cpu_6809_bra(self, false, cpu_6809_ea_relative(self));
953 cpu_6809_bra(self, !self->regs.bit.cf && !self->regs.bit.zf, cpu_6809_ea_relative(self));
956 cpu_6809_bra(self, self->regs.bit.cf || self->regs.bit.zf, cpu_6809_ea_relative(self));
959 cpu_6809_bra(self, !self->regs.bit.cf, cpu_6809_ea_relative(self));
962 cpu_6809_bra(self, self->regs.bit.cf, cpu_6809_ea_relative(self));
965 cpu_6809_bra(self, !self->regs.bit.zf, cpu_6809_ea_relative(self));
968 cpu_6809_bra(self, self->regs.bit.zf, cpu_6809_ea_relative(self));
971 cpu_6809_bra(self, !self->regs.bit.vf, cpu_6809_ea_relative(self));
974 cpu_6809_bra(self, self->regs.bit.vf, cpu_6809_ea_relative(self));
977 cpu_6809_bra(self, !self->regs.bit.nf, cpu_6809_ea_relative(self));
980 cpu_6809_bra(self, self->regs.bit.nf, cpu_6809_ea_relative(self));
983 cpu_6809_bra(self, !self->regs.bit.nf && !self->regs.bit.vf, cpu_6809_ea_relative(self));
986 cpu_6809_bra(self, self->regs.bit.nf || self->regs.bit.vf, cpu_6809_ea_relative(self));
989 cpu_6809_bra(self, !self->regs.bit.nf && !self->regs.bit.vf && !self->regs.bit.zf, cpu_6809_ea_relative(self));
992 cpu_6809_bra(self, self->regs.bit.nf || self->regs.bit.vf || self->regs.bit.zf, cpu_6809_ea_relative(self));
995 cpu_6809_lea_zf(self, CPU_6809_EA_X, cpu_6809_addressing_mode(self));
998 cpu_6809_lea_zf(self, CPU_6809_EA_Y, cpu_6809_addressing_mode(self));
1001 cpu_6809_lea(self, CPU_6809_EA_S, cpu_6809_addressing_mode(self));
1004 cpu_6809_lea(self, CPU_6809_EA_U, cpu_6809_addressing_mode(self));
1007 cpu_6809_psh(self, CPU_6809_EA_S, cpu_6809_fetch_byte(self));
1010 cpu_6809_pul(self, CPU_6809_EA_S, cpu_6809_fetch_byte(self));
1013 cpu_6809_psh(self, CPU_6809_EA_U, cpu_6809_fetch_byte(self));
1016 cpu_6809_pul(self, CPU_6809_EA_U, cpu_6809_fetch_byte(self));
1019 cpu_6809_illegal_opcode(self);
1031 cpu_6809_cwai(self, cpu_6809_fetch_byte(self));
1037 cpu_6809_reset(self);
1043 cpu_6809_neg(self, CPU_6809_EA_A);
1046 cpu_6809_illegal_opcode(self);
1049 cpu_6809_illegal_opcode(self);
1052 cpu_6809_com(self, CPU_6809_EA_A);
1055 cpu_6809_lsr(self, CPU_6809_EA_A);
1058 cpu_6809_illegal_opcode(self);
1061 cpu_6809_ror(self, CPU_6809_EA_A);
1064 cpu_6809_asr(self, CPU_6809_EA_A);
1067 cpu_6809_asl(self, CPU_6809_EA_A);
1070 cpu_6809_rol(self, CPU_6809_EA_A);
1073 cpu_6809_dec_byte(self, CPU_6809_EA_A);
1076 cpu_6809_illegal_opcode(self);
1079 cpu_6809_inc_byte(self, CPU_6809_EA_A);
1082 cpu_6809_tst(self, self->regs.byte.a);
1085 cpu_6809_illegal_opcode(self);
1088 cpu_6809_clr(self, CPU_6809_EA_A);
1091 cpu_6809_neg(self, CPU_6809_EA_B);
1094 cpu_6809_illegal_opcode(self);
1097 cpu_6809_illegal_opcode(self);
1100 cpu_6809_com(self, CPU_6809_EA_B);
1103 cpu_6809_lsr(self, CPU_6809_EA_B);
1106 cpu_6809_illegal_opcode(self);
1109 cpu_6809_ror(self, CPU_6809_EA_B);
1112 cpu_6809_asr(self, CPU_6809_EA_B);
1115 cpu_6809_asl(self, CPU_6809_EA_B);
1118 cpu_6809_rol(self, CPU_6809_EA_B);
1121 cpu_6809_dec_byte(self, CPU_6809_EA_B);
1124 cpu_6809_illegal_opcode(self);
1127 cpu_6809_inc_byte(self, CPU_6809_EA_B);
1130 cpu_6809_tst(self, self->regs.byte.b);
1133 cpu_6809_illegal_opcode(self);
1136 cpu_6809_clr(self, CPU_6809_EA_B);
1139 cpu_6809_neg(self, cpu_6809_addressing_mode(self));
1142 cpu_6809_illegal_opcode(self);
1145 cpu_6809_illegal_opcode(self);
1148 cpu_6809_com(self, cpu_6809_addressing_mode(self));
1151 cpu_6809_lsr(self, cpu_6809_addressing_mode(self));
1154 cpu_6809_illegal_opcode(self);
1157 cpu_6809_ror(self, cpu_6809_addressing_mode(self));
1160 cpu_6809_asr(self, cpu_6809_addressing_mode(self));
1163 cpu_6809_asl(self, cpu_6809_addressing_mode(self));
1166 cpu_6809_rol(self, cpu_6809_addressing_mode(self));
1169 cpu_6809_dec_byte(self, cpu_6809_addressing_mode(self));
1172 cpu_6809_illegal_opcode(self);
1175 cpu_6809_inc_byte(self, cpu_6809_addressing_mode(self));
1178 cpu_6809_tst(self, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1181 cpu_6809_jmp(self, cpu_6809_addressing_mode(self));
1184 cpu_6809_clr(self, cpu_6809_addressing_mode(self));
1187 cpu_6809_neg(self, cpu_6809_ea_extended(self));
1190 cpu_6809_illegal_opcode(self);
1193 cpu_6809_illegal_opcode(self);
1196 cpu_6809_com(self, cpu_6809_ea_extended(self));
1199 cpu_6809_lsr(self, cpu_6809_ea_extended(self));
1202 cpu_6809_illegal_opcode(self);
1205 cpu_6809_ror(self, cpu_6809_ea_extended(self));
1208 cpu_6809_asr(self, cpu_6809_ea_extended(self));
1211 cpu_6809_asl(self, cpu_6809_ea_extended(self));
1214 cpu_6809_rol(self, cpu_6809_ea_extended(self));
1217 cpu_6809_dec_byte(self, cpu_6809_ea_extended(self));
1220 cpu_6809_illegal_opcode(self);
1223 cpu_6809_inc_byte(self, cpu_6809_ea_extended(self));
1226 cpu_6809_tst(self, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1229 cpu_6809_jmp(self, cpu_6809_ea_extended(self));
1232 cpu_6809_clr(self, cpu_6809_ea_extended(self));
1235 cpu_6809_sub_byte(self, CPU_6809_EA_A, cpu_6809_fetch_byte(self));
1238 cpu_6809_cmp_byte(self, self->regs.byte.a, cpu_6809_fetch_byte(self));
1241 cpu_6809_sbc(self, CPU_6809_EA_A, cpu_6809_fetch_byte(self));
1244 cpu_6809_sub_word(self, CPU_6809_EA_D, cpu_6809_fetch_word(self));
1247 cpu_6809_and(self, CPU_6809_EA_A, cpu_6809_fetch_byte(self));
1250 cpu_6809_bit(self, self->regs.byte.a, cpu_6809_fetch_byte(self));
1253 cpu_6809_ld_byte(self, CPU_6809_EA_A, cpu_6809_fetch_byte(self));
1256 cpu_6809_illegal_opcode(self);
1259 cpu_6809_eor(self, CPU_6809_EA_A, cpu_6809_fetch_byte(self));
1262 cpu_6809_adc(self, CPU_6809_EA_A, cpu_6809_fetch_byte(self));
1265 cpu_6809_or(self, CPU_6809_EA_A, cpu_6809_fetch_byte(self));
1268 cpu_6809_add_byte(self, CPU_6809_EA_A, cpu_6809_fetch_byte(self));
1271 cpu_6809_cmp_word(self, self->regs.word.x, cpu_6809_fetch_word(self));
1274 cpu_6809_bsr(self, cpu_6809_ea_relative(self));
1277 cpu_6809_ld_word(self, CPU_6809_EA_X, cpu_6809_fetch_word(self));
1280 cpu_6809_illegal_opcode(self);
1283 cpu_6809_sub_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1286 cpu_6809_cmp_byte(self, self->regs.byte.a, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1289 cpu_6809_sbc(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1292 cpu_6809_sub_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
1295 cpu_6809_and(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1298 cpu_6809_bit(self, self->regs.byte.a, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1301 cpu_6809_ld_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1304 cpu_6809_st_byte(self, self->regs.byte.a, cpu_6809_ea_direct(self));
1307 cpu_6809_eor(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1310 cpu_6809_adc(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1313 cpu_6809_or(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1316 cpu_6809_add_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1319 cpu_6809_cmp_word(self, self->regs.word.x, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
1322 cpu_6809_jsr(self, cpu_6809_ea_direct(self));
1325 cpu_6809_ld_word(self, CPU_6809_EA_X, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
1328 cpu_6809_st_word(self, self->regs.word.x, cpu_6809_ea_direct(self));
1331 cpu_6809_sub_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1334 cpu_6809_cmp_byte(self, self->regs.byte.a, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1337 cpu_6809_sbc(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1340 cpu_6809_sub_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
1343 cpu_6809_and(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1346 cpu_6809_bit(self, self->regs.byte.a, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1349 cpu_6809_ld_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1352 cpu_6809_st_byte(self, self->regs.byte.a, cpu_6809_addressing_mode(self));
1355 cpu_6809_eor(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1358 cpu_6809_adc(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1361 cpu_6809_or(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1364 cpu_6809_add_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1367 cpu_6809_cmp_word(self, self->regs.word.x, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
1370 cpu_6809_jsr(self, cpu_6809_addressing_mode(self));
1373 cpu_6809_ld_word(self, CPU_6809_EA_X, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
1376 cpu_6809_st_word(self, self->regs.word.x, cpu_6809_addressing_mode(self));
1379 cpu_6809_sub_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1382 cpu_6809_cmp_byte(self, self->regs.byte.a, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1385 cpu_6809_sbc(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1388 cpu_6809_sub_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
1391 cpu_6809_and(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1394 cpu_6809_bit(self, self->regs.byte.a, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1397 cpu_6809_ld_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1400 cpu_6809_st_byte(self, self->regs.byte.a, cpu_6809_ea_extended(self));
1403 cpu_6809_eor(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1406 cpu_6809_adc(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1409 cpu_6809_or(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1412 cpu_6809_add_byte(self, CPU_6809_EA_A, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1415 cpu_6809_cmp_word(self, self->regs.word.x, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
1418 cpu_6809_jsr(self, cpu_6809_ea_extended(self));
1421 cpu_6809_ld_word(self, CPU_6809_EA_X, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
1424 cpu_6809_st_word(self, self->regs.word.x, cpu_6809_ea_extended(self));
1427 cpu_6809_sub_byte(self, CPU_6809_EA_B, cpu_6809_fetch_byte(self));
1430 cpu_6809_cmp_byte(self, self->regs.byte.b, cpu_6809_fetch_byte(self));
1433 cpu_6809_sbc(self, CPU_6809_EA_B, cpu_6809_fetch_byte(self));
1436 cpu_6809_add_word(self, CPU_6809_EA_D, cpu_6809_fetch_word(self));
1439 cpu_6809_and(self, CPU_6809_EA_B, cpu_6809_fetch_byte(self));
1442 cpu_6809_bit(self, self->regs.byte.b, cpu_6809_fetch_byte(self));
1445 cpu_6809_ld_byte(self, CPU_6809_EA_B, cpu_6809_fetch_byte(self));
1448 cpu_6809_illegal_opcode(self);
1451 cpu_6809_eor(self, CPU_6809_EA_B, cpu_6809_fetch_byte(self));
1454 cpu_6809_adc(self, CPU_6809_EA_B, cpu_6809_fetch_byte(self));
1457 cpu_6809_or(self, CPU_6809_EA_B, cpu_6809_fetch_byte(self));
1460 cpu_6809_add_byte(self, CPU_6809_EA_B, cpu_6809_fetch_byte(self));
1463 cpu_6809_ld_word(self, CPU_6809_EA_D, cpu_6809_fetch_word(self));
1466 cpu_6809_illegal_opcode(self);
1469 cpu_6809_ld_word(self, CPU_6809_EA_U, cpu_6809_fetch_word(self));
1472 cpu_6809_illegal_opcode(self);
1475 cpu_6809_sub_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1478 cpu_6809_cmp_byte(self, self->regs.byte.b, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1481 cpu_6809_sbc(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1484 cpu_6809_add_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
1487 cpu_6809_and(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1490 cpu_6809_bit(self, self->regs.byte.b, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1493 cpu_6809_ld_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1496 cpu_6809_st_byte(self, self->regs.byte.b, cpu_6809_ea_direct(self));
1499 cpu_6809_eor(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1502 cpu_6809_adc(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1505 cpu_6809_or(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1508 cpu_6809_add_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_direct(self)));
1511 cpu_6809_ld_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
1514 cpu_6809_st_word(self, self->regs.word.d, cpu_6809_ea_direct(self));
1517 cpu_6809_ld_word(self, CPU_6809_EA_U, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
1520 cpu_6809_st_word(self, self->regs.word.u, cpu_6809_ea_direct(self));
1523 cpu_6809_sub_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1526 cpu_6809_cmp_byte(self, self->regs.byte.b, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1529 cpu_6809_sbc(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1532 cpu_6809_add_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
1535 cpu_6809_and(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1538 cpu_6809_bit(self, self->regs.byte.b, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1541 cpu_6809_ld_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1544 cpu_6809_st_byte(self, self->regs.byte.b, cpu_6809_addressing_mode(self));
1547 cpu_6809_eor(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1550 cpu_6809_adc(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1553 cpu_6809_or(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1556 cpu_6809_add_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_addressing_mode(self)));
1559 cpu_6809_ld_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
1562 cpu_6809_st_word(self, self->regs.word.d, cpu_6809_addressing_mode(self));
1565 cpu_6809_ld_word(self, CPU_6809_EA_U, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
1568 cpu_6809_st_word(self, self->regs.word.u, cpu_6809_addressing_mode(self));
1571 cpu_6809_sub_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1574 cpu_6809_cmp_byte(self, self->regs.byte.b, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1577 cpu_6809_sbc(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1580 cpu_6809_add_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
1583 cpu_6809_and(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1586 cpu_6809_bit(self, self->regs.byte.b, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1589 cpu_6809_ld_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1592 cpu_6809_st_byte(self, self->regs.byte.b, cpu_6809_ea_extended(self));
1595 cpu_6809_eor(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1598 cpu_6809_adc(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1601 cpu_6809_or(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1604 cpu_6809_add_byte(self, CPU_6809_EA_B, cpu_6809_read_byte(self, cpu_6809_ea_extended(self)));
1607 cpu_6809_ld_word(self, CPU_6809_EA_D, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
1610 cpu_6809_st_word(self, self->regs.word.d, cpu_6809_ea_extended(self));
1613 cpu_6809_ld_word(self, CPU_6809_EA_U, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
1616 cpu_6809_st_word(self, self->regs.word.u, cpu_6809_ea_extended(self));
1621 void cpu_6809_execute_10(struct cpu_6809 *self) {
1622 switch (cpu_6809_fetch_byte(self)) {
1624 cpu_6809_illegal_opcode(self);
1627 cpu_6809_illegal_opcode(self);
1630 cpu_6809_illegal_opcode(self);
1633 cpu_6809_illegal_opcode(self);
1636 cpu_6809_illegal_opcode(self);
1639 cpu_6809_illegal_opcode(self);
1642 cpu_6809_illegal_opcode(self);
1645 cpu_6809_illegal_opcode(self);
1648 cpu_6809_illegal_opcode(self);
1651 cpu_6809_illegal_opcode(self);
1654 cpu_6809_illegal_opcode(self);
1657 cpu_6809_illegal_opcode(self);
1660 cpu_6809_illegal_opcode(self);
1663 cpu_6809_illegal_opcode(self);
1666 cpu_6809_illegal_opcode(self);
1669 cpu_6809_illegal_opcode(self);
1672 cpu_6809_illegal_opcode(self);
1675 cpu_6809_illegal_opcode(self);
1678 cpu_6809_illegal_opcode(self);
1681 cpu_6809_illegal_opcode(self);
1684 cpu_6809_illegal_opcode(self);
1687 cpu_6809_illegal_opcode(self);
1690 cpu_6809_illegal_opcode(self);
1693 cpu_6809_illegal_opcode(self);
1696 cpu_6809_illegal_opcode(self);
1699 cpu_6809_illegal_opcode(self);
1702 cpu_6809_illegal_opcode(self);
1705 cpu_6809_illegal_opcode(self);
1708 cpu_6809_illegal_opcode(self);
1711 cpu_6809_illegal_opcode(self);
1714 cpu_6809_illegal_opcode(self);
1717 cpu_6809_illegal_opcode(self);
1720 cpu_6809_illegal_opcode(self);
1723 cpu_6809_lbra(self, false, cpu_6809_ea_long_relative(self));
1726 cpu_6809_lbra(self, !self->regs.bit.cf && !self->regs.bit.zf, cpu_6809_ea_long_relative(self));
1729 cpu_6809_lbra(self, self->regs.bit.cf || self->regs.bit.zf, cpu_6809_ea_long_relative(self));
1732 cpu_6809_lbra(self, !self->regs.bit.cf, cpu_6809_ea_long_relative(self));
1735 cpu_6809_lbra(self, self->regs.bit.cf, cpu_6809_ea_long_relative(self));
1738 cpu_6809_lbra(self, !self->regs.bit.zf, cpu_6809_ea_long_relative(self));
1741 cpu_6809_lbra(self, self->regs.bit.zf, cpu_6809_ea_long_relative(self));
1744 cpu_6809_lbra(self, !self->regs.bit.vf, cpu_6809_ea_long_relative(self));
1747 cpu_6809_lbra(self, self->regs.bit.vf, cpu_6809_ea_long_relative(self));
1750 cpu_6809_lbra(self, !self->regs.bit.nf, cpu_6809_ea_long_relative(self));
1753 cpu_6809_lbra(self, self->regs.bit.nf, cpu_6809_ea_long_relative(self));
1756 cpu_6809_lbra(self, !self->regs.bit.nf && !self->regs.bit.vf, cpu_6809_ea_long_relative(self));
1759 cpu_6809_lbra(self, self->regs.bit.nf || self->regs.bit.vf, cpu_6809_ea_long_relative(self));
1762 cpu_6809_lbra(self, !self->regs.bit.nf && !self->regs.bit.vf && !self->regs.bit.zf, cpu_6809_ea_long_relative(self));
1765 cpu_6809_lbra(self, self->regs.bit.nf || self->regs.bit.vf || self->regs.bit.zf, cpu_6809_ea_long_relative(self));
1768 cpu_6809_illegal_opcode(self);
1771 cpu_6809_illegal_opcode(self);
1774 cpu_6809_illegal_opcode(self);
1777 cpu_6809_illegal_opcode(self);
1780 cpu_6809_illegal_opcode(self);
1783 cpu_6809_illegal_opcode(self);
1786 cpu_6809_illegal_opcode(self);
1789 cpu_6809_illegal_opcode(self);
1792 cpu_6809_illegal_opcode(self);
1795 cpu_6809_illegal_opcode(self);
1798 cpu_6809_illegal_opcode(self);
1801 cpu_6809_illegal_opcode(self);
1804 cpu_6809_illegal_opcode(self);
1807 cpu_6809_illegal_opcode(self);
1810 cpu_6809_illegal_opcode(self);
1813 cpu_6809_swi_n(self, 2);
1816 cpu_6809_illegal_opcode(self);
1819 cpu_6809_illegal_opcode(self);
1822 cpu_6809_illegal_opcode(self);
1825 cpu_6809_illegal_opcode(self);
1828 cpu_6809_illegal_opcode(self);
1831 cpu_6809_illegal_opcode(self);
1834 cpu_6809_illegal_opcode(self);
1837 cpu_6809_illegal_opcode(self);
1840 cpu_6809_illegal_opcode(self);
1843 cpu_6809_illegal_opcode(self);
1846 cpu_6809_illegal_opcode(self);
1849 cpu_6809_illegal_opcode(self);
1852 cpu_6809_illegal_opcode(self);
1855 cpu_6809_illegal_opcode(self);
1858 cpu_6809_illegal_opcode(self);
1861 cpu_6809_illegal_opcode(self);
1864 cpu_6809_illegal_opcode(self);
1867 cpu_6809_illegal_opcode(self);
1870 cpu_6809_illegal_opcode(self);
1873 cpu_6809_illegal_opcode(self);
1876 cpu_6809_illegal_opcode(self);
1879 cpu_6809_illegal_opcode(self);
1882 cpu_6809_illegal_opcode(self);
1885 cpu_6809_illegal_opcode(self);
1888 cpu_6809_illegal_opcode(self);
1891 cpu_6809_illegal_opcode(self);
1894 cpu_6809_illegal_opcode(self);
1897 cpu_6809_illegal_opcode(self);
1900 cpu_6809_illegal_opcode(self);
1903 cpu_6809_illegal_opcode(self);
1906 cpu_6809_illegal_opcode(self);
1909 cpu_6809_illegal_opcode(self);
1912 cpu_6809_illegal_opcode(self);
1915 cpu_6809_illegal_opcode(self);
1918 cpu_6809_illegal_opcode(self);
1921 cpu_6809_illegal_opcode(self);
1924 cpu_6809_illegal_opcode(self);
1927 cpu_6809_illegal_opcode(self);
1930 cpu_6809_illegal_opcode(self);
1933 cpu_6809_illegal_opcode(self);
1936 cpu_6809_illegal_opcode(self);
1939 cpu_6809_illegal_opcode(self);
1942 cpu_6809_illegal_opcode(self);
1945 cpu_6809_illegal_opcode(self);
1948 cpu_6809_illegal_opcode(self);
1951 cpu_6809_illegal_opcode(self);
1954 cpu_6809_illegal_opcode(self);
1957 cpu_6809_illegal_opcode(self);
1960 cpu_6809_illegal_opcode(self);
1963 cpu_6809_illegal_opcode(self);
1966 cpu_6809_illegal_opcode(self);
1969 cpu_6809_illegal_opcode(self);
1972 cpu_6809_illegal_opcode(self);
1975 cpu_6809_illegal_opcode(self);
1978 cpu_6809_illegal_opcode(self);
1981 cpu_6809_illegal_opcode(self);
1984 cpu_6809_illegal_opcode(self);
1987 cpu_6809_illegal_opcode(self);
1990 cpu_6809_illegal_opcode(self);
1993 cpu_6809_illegal_opcode(self);
1996 cpu_6809_illegal_opcode(self);
1999 cpu_6809_illegal_opcode(self);
2002 cpu_6809_illegal_opcode(self);
2005 cpu_6809_illegal_opcode(self);
2008 cpu_6809_illegal_opcode(self);
2011 cpu_6809_illegal_opcode(self);
2014 cpu_6809_illegal_opcode(self);
2017 cpu_6809_cmp_word(self, self->regs.word.d, cpu_6809_fetch_word(self));
2020 cpu_6809_illegal_opcode(self);
2023 cpu_6809_illegal_opcode(self);
2026 cpu_6809_illegal_opcode(self);
2029 cpu_6809_illegal_opcode(self);
2032 cpu_6809_illegal_opcode(self);
2035 cpu_6809_illegal_opcode(self);
2038 cpu_6809_illegal_opcode(self);
2041 cpu_6809_illegal_opcode(self);
2044 cpu_6809_cmp_word(self, self->regs.word.y, cpu_6809_fetch_word(self));
2047 cpu_6809_illegal_opcode(self);
2050 cpu_6809_ld_word(self, CPU_6809_EA_Y, cpu_6809_fetch_word(self));
2053 cpu_6809_illegal_opcode(self);
2056 cpu_6809_illegal_opcode(self);
2059 cpu_6809_illegal_opcode(self);
2062 cpu_6809_illegal_opcode(self);
2065 cpu_6809_cmp_word(self, self->regs.word.d, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
2068 cpu_6809_illegal_opcode(self);
2071 cpu_6809_illegal_opcode(self);
2074 cpu_6809_illegal_opcode(self);
2077 cpu_6809_illegal_opcode(self);
2080 cpu_6809_illegal_opcode(self);
2083 cpu_6809_illegal_opcode(self);
2086 cpu_6809_illegal_opcode(self);
2089 cpu_6809_illegal_opcode(self);
2092 cpu_6809_cmp_word(self, self->regs.word.y, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
2095 cpu_6809_illegal_opcode(self);
2098 cpu_6809_ld_word(self, CPU_6809_EA_Y, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
2101 cpu_6809_st_word(self, self->regs.word.y, cpu_6809_ea_direct(self));
2104 cpu_6809_illegal_opcode(self);
2107 cpu_6809_illegal_opcode(self);
2110 cpu_6809_illegal_opcode(self);
2113 cpu_6809_cmp_word(self, self->regs.word.d, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
2116 cpu_6809_illegal_opcode(self);
2119 cpu_6809_illegal_opcode(self);
2122 cpu_6809_illegal_opcode(self);
2125 cpu_6809_illegal_opcode(self);
2128 cpu_6809_illegal_opcode(self);
2131 cpu_6809_illegal_opcode(self);
2134 cpu_6809_illegal_opcode(self);
2137 cpu_6809_illegal_opcode(self);
2140 cpu_6809_cmp_word(self, self->regs.word.y, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
2143 cpu_6809_illegal_opcode(self);
2146 cpu_6809_ld_word(self, CPU_6809_EA_Y, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
2149 cpu_6809_st_word(self, self->regs.word.y, cpu_6809_addressing_mode(self));
2152 cpu_6809_illegal_opcode(self);
2155 cpu_6809_illegal_opcode(self);
2158 cpu_6809_illegal_opcode(self);
2161 cpu_6809_cmp_word(self, self->regs.word.d, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
2164 cpu_6809_illegal_opcode(self);
2167 cpu_6809_illegal_opcode(self);
2170 cpu_6809_illegal_opcode(self);
2173 cpu_6809_illegal_opcode(self);
2176 cpu_6809_illegal_opcode(self);
2179 cpu_6809_illegal_opcode(self);
2182 cpu_6809_illegal_opcode(self);
2185 cpu_6809_illegal_opcode(self);
2188 cpu_6809_cmp_word(self, self->regs.word.y, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
2191 cpu_6809_illegal_opcode(self);
2194 cpu_6809_ld_word(self, CPU_6809_EA_Y, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
2197 cpu_6809_st_word(self, self->regs.word.y, cpu_6809_ea_extended(self));
2200 cpu_6809_illegal_opcode(self);
2203 cpu_6809_illegal_opcode(self);
2206 cpu_6809_illegal_opcode(self);
2209 cpu_6809_illegal_opcode(self);
2212 cpu_6809_illegal_opcode(self);
2215 cpu_6809_illegal_opcode(self);
2218 cpu_6809_illegal_opcode(self);
2221 cpu_6809_illegal_opcode(self);
2224 cpu_6809_illegal_opcode(self);
2227 cpu_6809_illegal_opcode(self);
2230 cpu_6809_illegal_opcode(self);
2233 cpu_6809_illegal_opcode(self);
2236 cpu_6809_illegal_opcode(self);
2239 cpu_6809_illegal_opcode(self);
2242 cpu_6809_ld_word(self, CPU_6809_EA_S, cpu_6809_fetch_word(self));
2245 cpu_6809_illegal_opcode(self);
2248 cpu_6809_illegal_opcode(self);
2251 cpu_6809_illegal_opcode(self);
2254 cpu_6809_illegal_opcode(self);
2257 cpu_6809_illegal_opcode(self);
2260 cpu_6809_illegal_opcode(self);
2263 cpu_6809_illegal_opcode(self);
2266 cpu_6809_illegal_opcode(self);
2269 cpu_6809_illegal_opcode(self);
2272 cpu_6809_illegal_opcode(self);
2275 cpu_6809_illegal_opcode(self);
2278 cpu_6809_illegal_opcode(self);
2281 cpu_6809_illegal_opcode(self);
2284 cpu_6809_illegal_opcode(self);
2287 cpu_6809_illegal_opcode(self);
2290 cpu_6809_ld_word(self, CPU_6809_EA_S, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
2293 cpu_6809_st_word(self, self->regs.word.s, cpu_6809_ea_direct(self));
2296 cpu_6809_illegal_opcode(self);
2299 cpu_6809_illegal_opcode(self);
2302 cpu_6809_illegal_opcode(self);
2305 cpu_6809_illegal_opcode(self);
2308 cpu_6809_illegal_opcode(self);
2311 cpu_6809_illegal_opcode(self);
2314 cpu_6809_illegal_opcode(self);
2317 cpu_6809_illegal_opcode(self);
2320 cpu_6809_illegal_opcode(self);
2323 cpu_6809_illegal_opcode(self);
2326 cpu_6809_illegal_opcode(self);
2329 cpu_6809_illegal_opcode(self);
2332 cpu_6809_illegal_opcode(self);
2335 cpu_6809_illegal_opcode(self);
2338 cpu_6809_ld_word(self, CPU_6809_EA_S, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
2341 cpu_6809_st_word(self, self->regs.word.s, cpu_6809_addressing_mode(self));
2344 cpu_6809_illegal_opcode(self);
2347 cpu_6809_illegal_opcode(self);
2350 cpu_6809_illegal_opcode(self);
2353 cpu_6809_illegal_opcode(self);
2356 cpu_6809_illegal_opcode(self);
2359 cpu_6809_illegal_opcode(self);
2362 cpu_6809_illegal_opcode(self);
2365 cpu_6809_illegal_opcode(self);
2368 cpu_6809_illegal_opcode(self);
2371 cpu_6809_illegal_opcode(self);
2374 cpu_6809_illegal_opcode(self);
2377 cpu_6809_illegal_opcode(self);
2380 cpu_6809_illegal_opcode(self);
2383 cpu_6809_illegal_opcode(self);
2386 cpu_6809_ld_word(self, CPU_6809_EA_S, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
2389 cpu_6809_st_word(self, self->regs.word.s, cpu_6809_ea_extended(self));
2394 void cpu_6809_execute_11(struct cpu_6809 *self) {
2395 switch (cpu_6809_fetch_byte(self)) {
2397 cpu_6809_illegal_opcode(self);
2400 cpu_6809_illegal_opcode(self);
2403 cpu_6809_illegal_opcode(self);
2406 cpu_6809_illegal_opcode(self);
2409 cpu_6809_illegal_opcode(self);
2412 cpu_6809_illegal_opcode(self);
2415 cpu_6809_illegal_opcode(self);
2418 cpu_6809_illegal_opcode(self);
2421 cpu_6809_illegal_opcode(self);
2424 cpu_6809_illegal_opcode(self);
2427 cpu_6809_illegal_opcode(self);
2430 cpu_6809_illegal_opcode(self);
2433 cpu_6809_illegal_opcode(self);
2436 cpu_6809_illegal_opcode(self);
2439 cpu_6809_illegal_opcode(self);
2442 cpu_6809_illegal_opcode(self);
2445 cpu_6809_illegal_opcode(self);
2448 cpu_6809_illegal_opcode(self);
2451 cpu_6809_illegal_opcode(self);
2454 cpu_6809_illegal_opcode(self);
2457 cpu_6809_illegal_opcode(self);
2460 cpu_6809_illegal_opcode(self);
2463 cpu_6809_illegal_opcode(self);
2466 cpu_6809_illegal_opcode(self);
2469 cpu_6809_illegal_opcode(self);
2472 cpu_6809_illegal_opcode(self);
2475 cpu_6809_illegal_opcode(self);
2478 cpu_6809_illegal_opcode(self);
2481 cpu_6809_illegal_opcode(self);
2484 cpu_6809_illegal_opcode(self);
2487 cpu_6809_illegal_opcode(self);
2490 cpu_6809_illegal_opcode(self);
2493 cpu_6809_illegal_opcode(self);
2496 cpu_6809_illegal_opcode(self);
2499 cpu_6809_illegal_opcode(self);
2502 cpu_6809_illegal_opcode(self);
2505 cpu_6809_illegal_opcode(self);
2508 cpu_6809_illegal_opcode(self);
2511 cpu_6809_illegal_opcode(self);
2514 cpu_6809_illegal_opcode(self);
2517 cpu_6809_illegal_opcode(self);
2520 cpu_6809_illegal_opcode(self);
2523 cpu_6809_illegal_opcode(self);
2526 cpu_6809_illegal_opcode(self);
2529 cpu_6809_illegal_opcode(self);
2532 cpu_6809_illegal_opcode(self);
2535 cpu_6809_illegal_opcode(self);
2538 cpu_6809_illegal_opcode(self);
2541 cpu_6809_illegal_opcode(self);
2544 cpu_6809_illegal_opcode(self);
2547 cpu_6809_illegal_opcode(self);
2550 cpu_6809_illegal_opcode(self);
2553 cpu_6809_illegal_opcode(self);
2556 cpu_6809_illegal_opcode(self);
2559 cpu_6809_illegal_opcode(self);
2562 cpu_6809_illegal_opcode(self);
2565 cpu_6809_illegal_opcode(self);
2568 cpu_6809_illegal_opcode(self);
2571 cpu_6809_illegal_opcode(self);
2574 cpu_6809_illegal_opcode(self);
2577 cpu_6809_illegal_opcode(self);
2580 cpu_6809_illegal_opcode(self);
2583 cpu_6809_illegal_opcode(self);
2586 cpu_6809_swi_n(self, 3);
2589 cpu_6809_illegal_opcode(self);
2592 cpu_6809_illegal_opcode(self);
2595 cpu_6809_illegal_opcode(self);
2598 cpu_6809_illegal_opcode(self);
2601 cpu_6809_illegal_opcode(self);
2604 cpu_6809_illegal_opcode(self);
2607 cpu_6809_illegal_opcode(self);
2610 cpu_6809_illegal_opcode(self);
2613 cpu_6809_illegal_opcode(self);
2616 cpu_6809_illegal_opcode(self);
2619 cpu_6809_illegal_opcode(self);
2622 cpu_6809_illegal_opcode(self);
2625 cpu_6809_illegal_opcode(self);
2628 cpu_6809_illegal_opcode(self);
2631 cpu_6809_illegal_opcode(self);
2634 cpu_6809_illegal_opcode(self);
2637 cpu_6809_illegal_opcode(self);
2640 cpu_6809_illegal_opcode(self);
2643 cpu_6809_illegal_opcode(self);
2646 cpu_6809_illegal_opcode(self);
2649 cpu_6809_illegal_opcode(self);
2652 cpu_6809_illegal_opcode(self);
2655 cpu_6809_illegal_opcode(self);
2658 cpu_6809_illegal_opcode(self);
2661 cpu_6809_illegal_opcode(self);
2664 cpu_6809_illegal_opcode(self);
2667 cpu_6809_illegal_opcode(self);
2670 cpu_6809_illegal_opcode(self);
2673 cpu_6809_illegal_opcode(self);
2676 cpu_6809_illegal_opcode(self);
2679 cpu_6809_illegal_opcode(self);
2682 cpu_6809_illegal_opcode(self);
2685 cpu_6809_illegal_opcode(self);
2688 cpu_6809_illegal_opcode(self);
2691 cpu_6809_illegal_opcode(self);
2694 cpu_6809_illegal_opcode(self);
2697 cpu_6809_illegal_opcode(self);
2700 cpu_6809_illegal_opcode(self);
2703 cpu_6809_illegal_opcode(self);
2706 cpu_6809_illegal_opcode(self);
2709 cpu_6809_illegal_opcode(self);
2712 cpu_6809_illegal_opcode(self);
2715 cpu_6809_illegal_opcode(self);
2718 cpu_6809_illegal_opcode(self);
2721 cpu_6809_illegal_opcode(self);
2724 cpu_6809_illegal_opcode(self);
2727 cpu_6809_illegal_opcode(self);
2730 cpu_6809_illegal_opcode(self);
2733 cpu_6809_illegal_opcode(self);
2736 cpu_6809_illegal_opcode(self);
2739 cpu_6809_illegal_opcode(self);
2742 cpu_6809_illegal_opcode(self);
2745 cpu_6809_illegal_opcode(self);
2748 cpu_6809_illegal_opcode(self);
2751 cpu_6809_illegal_opcode(self);
2754 cpu_6809_illegal_opcode(self);
2757 cpu_6809_illegal_opcode(self);
2760 cpu_6809_illegal_opcode(self);
2763 cpu_6809_illegal_opcode(self);
2766 cpu_6809_illegal_opcode(self);
2769 cpu_6809_illegal_opcode(self);
2772 cpu_6809_illegal_opcode(self);
2775 cpu_6809_illegal_opcode(self);
2778 cpu_6809_illegal_opcode(self);
2781 cpu_6809_illegal_opcode(self);
2784 cpu_6809_illegal_opcode(self);
2787 cpu_6809_illegal_opcode(self);
2790 cpu_6809_cmp_word(self, self->regs.word.u, cpu_6809_fetch_word(self));
2793 cpu_6809_illegal_opcode(self);
2796 cpu_6809_illegal_opcode(self);
2799 cpu_6809_illegal_opcode(self);
2802 cpu_6809_illegal_opcode(self);
2805 cpu_6809_illegal_opcode(self);
2808 cpu_6809_illegal_opcode(self);
2811 cpu_6809_illegal_opcode(self);
2814 cpu_6809_illegal_opcode(self);
2817 cpu_6809_cmp_word(self, self->regs.word.s, cpu_6809_fetch_word(self));
2820 cpu_6809_illegal_opcode(self);
2823 cpu_6809_illegal_opcode(self);
2826 cpu_6809_illegal_opcode(self);
2829 cpu_6809_illegal_opcode(self);
2832 cpu_6809_illegal_opcode(self);
2835 cpu_6809_illegal_opcode(self);
2838 cpu_6809_cmp_word(self, self->regs.word.u, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
2841 cpu_6809_illegal_opcode(self);
2844 cpu_6809_illegal_opcode(self);
2847 cpu_6809_illegal_opcode(self);
2850 cpu_6809_illegal_opcode(self);
2853 cpu_6809_illegal_opcode(self);
2856 cpu_6809_illegal_opcode(self);
2859 cpu_6809_illegal_opcode(self);
2862 cpu_6809_illegal_opcode(self);
2865 cpu_6809_cmp_word(self, self->regs.word.s, cpu_6809_read_word(self, cpu_6809_ea_direct(self)));
2868 cpu_6809_illegal_opcode(self);
2871 cpu_6809_illegal_opcode(self);
2874 cpu_6809_illegal_opcode(self);
2877 cpu_6809_illegal_opcode(self);
2880 cpu_6809_illegal_opcode(self);
2883 cpu_6809_illegal_opcode(self);
2886 cpu_6809_cmp_word(self, self->regs.word.u, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
2889 cpu_6809_illegal_opcode(self);
2892 cpu_6809_illegal_opcode(self);
2895 cpu_6809_illegal_opcode(self);
2898 cpu_6809_illegal_opcode(self);
2901 cpu_6809_illegal_opcode(self);
2904 cpu_6809_illegal_opcode(self);
2907 cpu_6809_illegal_opcode(self);
2910 cpu_6809_illegal_opcode(self);
2913 cpu_6809_cmp_word(self, self->regs.word.s, cpu_6809_read_word(self, cpu_6809_addressing_mode(self)));
2916 cpu_6809_illegal_opcode(self);
2919 cpu_6809_illegal_opcode(self);
2922 cpu_6809_illegal_opcode(self);
2925 cpu_6809_illegal_opcode(self);
2928 cpu_6809_illegal_opcode(self);
2931 cpu_6809_illegal_opcode(self);
2934 cpu_6809_cmp_word(self, self->regs.word.u, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
2937 cpu_6809_illegal_opcode(self);
2940 cpu_6809_illegal_opcode(self);
2943 cpu_6809_illegal_opcode(self);
2946 cpu_6809_illegal_opcode(self);
2949 cpu_6809_illegal_opcode(self);
2952 cpu_6809_illegal_opcode(self);
2955 cpu_6809_illegal_opcode(self);
2958 cpu_6809_illegal_opcode(self);
2961 cpu_6809_cmp_word(self, self->regs.word.s, cpu_6809_read_word(self, cpu_6809_ea_extended(self)));
2964 cpu_6809_illegal_opcode(self);
2967 cpu_6809_illegal_opcode(self);
2970 cpu_6809_illegal_opcode(self);
2973 cpu_6809_illegal_opcode(self);
2976 cpu_6809_illegal_opcode(self);
2979 cpu_6809_illegal_opcode(self);
2982 cpu_6809_illegal_opcode(self);
2985 cpu_6809_illegal_opcode(self);
2988 cpu_6809_illegal_opcode(self);
2991 cpu_6809_illegal_opcode(self);
2994 cpu_6809_illegal_opcode(self);
2997 cpu_6809_illegal_opcode(self);
3000 cpu_6809_illegal_opcode(self);
3003 cpu_6809_illegal_opcode(self);
3006 cpu_6809_illegal_opcode(self);
3009 cpu_6809_illegal_opcode(self);
3012 cpu_6809_illegal_opcode(self);
3015 cpu_6809_illegal_opcode(self);
3018 cpu_6809_illegal_opcode(self);
3021 cpu_6809_illegal_opcode(self);
3024 cpu_6809_illegal_opcode(self);
3027 cpu_6809_illegal_opcode(self);
3030 cpu_6809_illegal_opcode(self);
3033 cpu_6809_illegal_opcode(self);
3036 cpu_6809_illegal_opcode(self);
3039 cpu_6809_illegal_opcode(self);
3042 cpu_6809_illegal_opcode(self);
3045 cpu_6809_illegal_opcode(self);
3048 cpu_6809_illegal_opcode(self);
3051 cpu_6809_illegal_opcode(self);
3054 cpu_6809_illegal_opcode(self);
3057 cpu_6809_illegal_opcode(self);
3060 cpu_6809_illegal_opcode(self);
3063 cpu_6809_illegal_opcode(self);
3066 cpu_6809_illegal_opcode(self);
3069 cpu_6809_illegal_opcode(self);
3072 cpu_6809_illegal_opcode(self);
3075 cpu_6809_illegal_opcode(self);
3078 cpu_6809_illegal_opcode(self);
3081 cpu_6809_illegal_opcode(self);
3084 cpu_6809_illegal_opcode(self);
3087 cpu_6809_illegal_opcode(self);
3090 cpu_6809_illegal_opcode(self);
3093 cpu_6809_illegal_opcode(self);
3096 cpu_6809_illegal_opcode(self);
3099 cpu_6809_illegal_opcode(self);
3102 cpu_6809_illegal_opcode(self);
3105 cpu_6809_illegal_opcode(self);
3108 cpu_6809_illegal_opcode(self);
3111 cpu_6809_illegal_opcode(self);
3114 cpu_6809_illegal_opcode(self);
3117 cpu_6809_illegal_opcode(self);
3120 cpu_6809_illegal_opcode(self);
3123 cpu_6809_illegal_opcode(self);
3126 cpu_6809_illegal_opcode(self);
3129 cpu_6809_illegal_opcode(self);
3132 cpu_6809_illegal_opcode(self);
3135 cpu_6809_illegal_opcode(self);
3138 cpu_6809_illegal_opcode(self);
3141 cpu_6809_illegal_opcode(self);
3144 cpu_6809_illegal_opcode(self);
3147 cpu_6809_illegal_opcode(self);
3150 cpu_6809_illegal_opcode(self);
3153 cpu_6809_illegal_opcode(self);
3156 cpu_6809_illegal_opcode(self);
3159 cpu_6809_illegal_opcode(self);
3162 cpu_6809_illegal_opcode(self);