Implement more of 6809.

This commit is contained in:
Jeff Tranter 2015-07-03 23:43:54 -04:00
parent e7427779e0
commit 487a2e3321

127
6809.py
View File

@ -163,12 +163,137 @@ opcodeTable = {
0x9d : [ 2, "jsr", "indexed" ],
0xad : [ 2, "jsr", "direct" ],
0xbd : [ 3, "jsr", "extended" ],
0x86 : [ 2, "lda", "imm8" ],
0x96 : [ 2, "lda", "direct" ],
0xa6 : [ 2, "lda", "indexed" ],
0xb6 : [ 3, "lda", "extended" ],
0xc6 : [ 2, "ldb", "imm8" ],
0xd6 : [ 2, "ldb", "direct" ],
0xe6 : [ 2, "ldb", "indexed" ],
0xf6 : [ 3, "ldb", "extended" ],
0xcc : [ 3, "ldd", "imm16" ],
0xdc : [ 2, "ldd", "direct" ],
0xec : [ 2, "ldd", "indexed" ],
0xfc : [ 3, "ldd", "extended" ],
0x10ce : [ 4, "lds", "imm16" ],
0x10de : [ 3, "lds", "direct" ],
0x10ee : [ 3, "lds", "indexed" ],
0x10fe : [ 4, "lds", "extended" ],
0xce : [ 3, "ldu", "imm16" ],
0xde : [ 2, "ldu", "direct" ],
0xee : [ 2, "ldu", "indexed" ],
0xfe : [ 3, "ldu", "extended" ],
0x8e : [ 3, "ldx", "imm16" ],
0x9e : [ 2, "ldx", "direct" ],
0xae : [ 2, "ldx", "indexed" ],
0xbe : [ 3, "ldx", "extended" ],
0x108e : [ 4, "ldy", "imm16" ],
0x109e : [ 4, "ldy", "direct" ],
0x10ae : [ 4, "ldy", "indexed" ],
0x10be : [ 4, "ldy", "extended" ],
0x32 : [ 2, "leas", "indexed" ],
0x33 : [ 2, "leau", "indexed" ],
0x30 : [ 2, "leax", "indexed" ],
0x31 : [ 2, "leay", "indexed" ],
0x48 : [ 1, "lsla", "inherent" ],
0x58 : [ 1, "lslb", "inherent" ],
0x08 : [ 2, "lsl", "direct" ],
0x68 : [ 2, "lsl", "indexed" ],
0x78 : [ 3, "lsl", "extended" ],
0x44 : [ 1, "lsra", "inherent" ],
0x54 : [ 1, "lsrb", "inherent" ],
0x04 : [ 2, "lsr", "direct" ],
0x64 : [ 2, "lsr", "indexed" ],
0x74 : [ 3, "lsr", "extended" ],
0x3d : [ 1, "mul", "inherent" ],
0x40 : [ 1, "nega", "inherent" ],
0x50 : [ 1, "negb", "inherent" ],
0x00 : [ 2, "neg", "direct" ],
0x60 : [ 2, "neg", "indexed" ],
0x70 : [ 3, "neg", "extended" ],
0x12 : [ 1, "nop", "inherent" ],
0x8a : [ 2, "ora", "imm8" ],
0x9a : [ 2, "ora", "direct" ],
0xaa : [ 2, "ora", "indexed" ],
0xba : [ 3, "ora", "extended" ],
0xca : [ 2, "orb", "imm8" ],
0xda : [ 2, "orb", "direct" ],
0xea : [ 2, "orb", "indexed" ],
0xfa : [ 3, "orb", "extended" ],
0x1a : [ 2, "orcc", "imm8" ],
0x34 : [ 2, "pshs", "imm8" ],
0x36 : [ 2, "pshu", "imm8" ],
0x35 : [ 2, "puls", "imm8" ],
0x37 : [ 2, "pulu", "imm8" ],
0x49 : [ 1, "rola", "inherent" ],
0x59 : [ 1, "rolb", "inherent" ],
0x09 : [ 2, "rol", "direct" ],
0x69 : [ 2, "rol", "indexed" ],
0x79 : [ 3, "rol", "extended" ],
0x46 : [ 1, "rora", "inherent" ],
0x56 : [ 1, "rorb", "inherent" ],
0x06 : [ 2, "ror", "direct" ],
0x66 : [ 2, "ror", "indexed" ],
0x76 : [ 3, "ror", "extended" ],
0x3b : [ 1, "rti", "inherent" ],
0x39 : [ 1, "rts", "inherent" ],
0x82 : [ 2, "sbca", "imm8" ],
0x92 : [ 2, "sbca", "direct" ],
0xa2 : [ 2, "sbca", "indexed" ],
0xb2 : [ 3, "sbca", "extended" ],
0xc2 : [ 2, "sbcb", "imm8" ],
0xd2 : [ 2, "sbcb", "direct" ],
0xe2 : [ 2, "sbcb", "indexed" ],
0xf2 : [ 3, "sbcb", "extended" ],
0x1d : [ 1, "sex", "inherent" ],
0x97 : [ 2, "sta", "direct" ],
0xa7 : [ 2, "sta", "indexed" ],
0xb7 : [ 3, "sta", "extended" ],
0xd7 : [ 2, "stb", "direct" ],
0xe7 : [ 2, "stb", "indexed" ],
0xf7 : [ 3, "stb", "extended" ],
0xdd : [ 2, "std", "direct" ],
0xed : [ 2, "std", "indexed" ],
0xfd : [ 3, "std", "extended" ],
0x10df : [ 3, "sts", "direct" ],
0x10ef : [ 3, "sts", "indexed" ],
0x10ff : [ 4, "sts", "extended" ],
0xdf : [ 2, "stu", "direct" ],
0xef : [ 2, "stu", "indexed" ],
0xff : [ 3, "stu", "extended" ],
0x9f : [ 2, "stx", "direct" ],
0xaf : [ 2, "stx", "indexed" ],
0xbf : [ 3, "stx", "extended" ],
0x109f : [ 3, "sty", "direct" ],
0x10af : [ 3, "sty", "indexed" ],
0x10bf : [ 4, "sty", "extended" ],
0x80 : [ 2, "suba", "imm8" ],
0x90 : [ 2, "suba", "direct" ],
0xa0 : [ 2, "suba", "indexed" ],
0xb0 : [ 3, "suba", "extended" ],
0xc0 : [ 2, "subb", "imm8" ],
0xd0 : [ 2, "subb", "direct" ],
0xe0 : [ 2, "subb", "indexed" ],
0xf0 : [ 3, "subb", "extended" ],
0x83 : [ 3, "subd", "imm16" ],
0x93 : [ 2, "subd", "direct" ],
0xa3 : [ 2, "subd", "indexed" ],
0xb3 : [ 3, "subd", "extended" ],
0x3f : [ 1, "swi", "inherent" ],
0x103f : [ 2, "swi2", "inherent" ],
0x113f : [ 2, "swi3", "inherent" ],
0x13 : [ 1, "sync", "inherent" ],
0x1f : [ 2, "tfr", "r1,r2" ],
0x4d : [ 1, "tsta", "inherent" ],
0x5d : [ 1, "tstb", "inherent" ],
0x0d : [ 2, "tst", "direct" ],
0x6d : [ 2, "tst", "indexed" ],
0x7d : [ 3, "tst", "extended" ],
0x26 : [ 2, "bne", "rel8", pcr ],
0x1026 : [ 4, "lbne", "rel16", pcr ],
0x00 : [ 2, "neg", "direct" ],
0xff : [ 3, "stu", "extended" ],