6800abc.txt Instruction set of the 6800 in alphabetical order From: microcomputer primer, Mitchell Waite and Michael Pardee, Howard W. Sams and Co., Inc. Indianapolis, USA 1977 1988..1989/wjvg addressing modes flags mnem immed direct index extend inher explan h i n z v c -------------------------------------------------------------------- aba -- - - -- - - -- - - -- - - 1b 2 1 a+=b x - x x x x adca 89 2 2 99 3 2 a9 5 2 b9 4 3 -- - - a+=m+c x - x x x x adcb c9 2 2 d9 3 2 e9 5 2 f9 4 3 -- - - b+=m+c x - x x x x adda 8b 2 2 9b 3 2 ab 5 2 bb 4 3 -- - - a+=m x - x x x x addb cb 2 2 db 3 2 eb 5 2 fb 4 3 -- - - b+=m x - x x x x anda 84 2 2 94 3 2 a4 5 2 b4 4 3 -- - - a&=m - - x x 0 - andb c4 2 2 d4 3 2 e4 5 2 f4 4 3 -- - - b&=m - - x x 0 - asl -- - - -- - - 68 7 2 78 6 3 -- - - m<<=1 - - x x x x asla -- - - -- - - -- - - -- - - 48 2 1 a<<=1 - - x x x x aslb -- - - -- - - -- - - -- - - 58 2 1 b<<=1 - - x x x x asr -- - - -- - - 67 7 2 77 6 3 -- - - (i)m>>=1 - - x x x x asra -- - - -- - - -- - - -- - - 47 2 1 (i)a>>=1 - - x x x x asrb -- - - -- - - -- - - -- - - 57 2 1 (i)b>>=1 - - x x x x bcc 24 4 2 -- - - -- - - -- - - -- - - bra(cc) - - - - - - bcs 25 4 2 -- - - -- - - -- - - -- - - bra(cs) - - - - - - beq 27 4 2 -- - - -- - - -- - - -- - - bra(eq) - - - - - - bge 2c 4 2 -- - - -- - - -- - - -- - - bra(ge) - - - - - - bgt 2e 4 2 -- - - -- - - -- - - -- - - bra(gt) - - - - - - bhi 22 4 2 -- - - -- - - -- - - -- - - bra(hi) - - - - - - bita 85 2 2 95 3 2 a5 5 2 b5 4 3 -- - - a&m - - x x 0 - bitb c5 2 2 d5 3 2 e5 5 2 f5 4 3 -- - - b&m - - x x 0 - ble 2f 4 2 -- - - -- - - -- - - -- - - bra(le) - - - - - - bls 23 4 2 -- - - -- - - -- - - -- - - bra(ls) - - - - - - blt 2d 4 2 -- - - -- - - -- - - -- - - bra(lt) - - - - - - bmi 2b 4 2 -- - - -- - - -- - - -- - - bra(mi) - - - - - - bne 26 4 2 -- - - -- - - -- - - -- - - bra(ne) - - - - - - bpl 2a 4 2 -- - - -- - - -- - - -- - - bra(pl) - - - - - - bra 20 4 2 -- - - -- - - -- - - -- - - bra - - - - - - bsr 8d 8 2 -- - - -- - - -- - - -- - - bsr - - - - - - bvc 28 4 2 -- - - -- - - -- - - -- - - bra(vc) - - - - - - bvs 29 4 2 -- - - -- - - -- - - -- - - bra(vs) - - - - - - cba -- - - -- - - -- - - -- - - 11 2 1 a-b - - x x x x clc -- - - -- - - -- - - -- - - 0c 2 1 c=0 - - - - - 0 cli -- - - -- - - -- - - -- - - 0e 2 1 i=0 - 0 - - - - clr -- - - -- - - 6f 7 2 7f 6 3 -- - - m=0 - - x x 0 0 clra -- - - -- - - -- - - -- - - 4f 2 1 a=0 - - x x 0 0 clrb -- - - -- - - -- - - -- - - 5f 2 1 b=0 - - x x 0 0 clv -- - - -- - - -- - - -- - - 0a 2 1 v=0 - - - - 0 - cmpa 81 2 2 91 3 2 a1 5 2 b1 4 3 -- - - a-m - - x x x x cmpb c1 2 2 d1 3 2 e1 5 2 f1 4 3 -- - - b-m - - x x x x com -- - - -- - - 63 7 2 73 6 3 -- - - m=~m - - x x 0 1 coma -- - - -- - - -- - - -- - - 43 2 1 a=~a - - x x 0 1 comb -- - - -- - - -- - - -- - - 53 2 1 b=~b - - x x 0 1 cpx 8c 3 3 9c 4 2 ac 6 2 bc 5 3 -- - - x-m - - x x x x daa -- - - -- - - -- - - -- - - 19 2 1 a=da(a) - - x x x 3 dec -- - - -- - - 6a 7 2 7a 6 3 -- - - m-=1 - - x x x - deca -- - - -- - - -- - - -- - - 4a 2 1 a-=1 - - x x x - decb -- - - -- - - -- - - -- - - 5a 2 1 b-=1 - - x x x - des -- - - -- - - -- - - -- - - 34 4 1 s-=1 - - - - - - dex -- - - -- - - -- - - -- - - 09 4 1 x-=1 - - - x - - eora 88 2 2 98 3 2 a8 5 2 b8 4 3 -- - - a^=m - - x x 0 - eorb c8 2 2 d8 3 2 e8 5 2 f8 4 3 -- - - b^=m - - x x 0 - inc -- - - -- - - 6c 7 2 7c 6 3 -- - - m+=1 - - x x x - inca -- - - -- - - -- - - -- - - 4c 2 1 a+=1 - - x x x - incb -- - - -- - - -- - - -- - - 5c 2 1 b+=1 - - x x x - ins -- - - -- - - -- - - -- - - 31 4 1 s+=1 - - - - - - inx -- - - -- - - -- - - -- - - 08 4 1 x+=1 - - - x - - jmp -- - - -- - - 6e 4 2 7e 3 3 -- - - jmp - - - - - - jsr -- - - -- - - ad 8 2 bd 9 3 -- - - jsr - - - - - - ldaa 86 2 2 96 3 2 a6 5 2 b6 4 3 -- - - a=m - - x x 0 - ldab c6 2 2 d6 3 2 e6 5 2 f6 4 3 -- - - b=m - - x x 0 - lds 8e 3 3 9e 4 2 ae 6 2 be 5 3 -- - - s=m - - x x 0 - ldx ce 3 3 de 4 2 ee 6 2 fe 5 3 -- - - x=m - - x x 0 - lsr -- - - -- - - 64 7 2 74 6 3 -- - - (u)m>>=1 - - x x x x lsra -- - - -- - - -- - - -- - - 44 2 1 (u)a>>=1 - - x x x x lsrb -- - - -- - - -- - - -- - - 54 2 1 (u)b>>=1 - - x x x x neg -- - - -- - - 60 7 2 70 6 3 -- - - m=-m - - x x x x nega -- - - -- - - -- - - -- - - 40 2 1 a=-a - - x x x x negb -- - - -- - - -- - - -- - - 50 2 1 b=-b - - x x x x nop -- - - -- - - -- - - -- - - 01 2 1 nop - - - - - - oraa 8a 2 2 9a 3 2 aa 5 2 ba 4 3 -- - - a|=m - - x x 0 - orab ca 2 2 da 3 2 ea 5 2 fa 4 3 -- - - b|=m - - x x 0 - psha -- - - -- - - -- - - -- - - 36 4 1 *s--=a - - - - - - pshb -- - - -- - - -- - - -- - - 37 4 1 *s--=b - - - - - - pula -- - - -- - - -- - - -- - - 32 4 1 a=*++s - - - - - - pulb -- - - -- - - -- - - -- - - 33 4 1 b=*++s - - - - - - rol -- - - -- - - 69 7 2 79 6 3 -- - - m=rol(m) - - x x x x rola -- - - -- - - -- - - -- - - 49 2 1 a=rol(a) - - x x x x rolb -- - - -- - - -- - - -- - - 59 2 1 b=rol(b) - - x x x x ror -- - - -- - - 66 7 2 76 6 3 -- - - m=ror(m) - - x x x x rora -- - - -- - - -- - - -- - - 46 2 1 a=ror(a) - - x x x x rorb -- - - -- - - -- - - -- - - 56 2 1 b=ror(b) - - x x x x rti -- - - -- - - -- - - -- - - 3b a 1 rti x x x x x x rts -- - - -- - - -- - - -- - - 39 5 1 rts - - - - - - sba -- - - -- - - -- - - -- - - 10 2 1 a-=b - - x x x x sbca 82 2 2 92 3 2 a2 5 2 b2 4 3 -- - - a-=m+c - - x x x x sbcb c2 2 2 d2 3 2 e2 5 2 f2 4 3 -- - - b-=m+c - - x x x x sec -- - - -- - - -- - - -- - - 0d 2 1 c=1 - - - - - 1 sei -- - - -- - - -- - - -- - - 0f 2 1 i=1 - 1 - - - - sev -- - - -- - - -- - - -- - - 0b 2 1 v=1 - - - - 1 - staa -- - - 97 4 2 a7 6 2 b7 5 3 -- - - m=a - - x x 0 - stab -- - - d7 4 2 e7 6 2 f7 5 3 -- - - m=b - - x x 0 - sts -- - - 9f 4 2 af 7 2 bf 6 3 -- - - m=s - - x x 0 - stx -- - - df 4 2 ef 7 2 ff 6 3 -- - - m=x - - x x 0 - suba 80 2 2 90 3 2 a0 5 2 b0 4 3 -- - - a-=m - - x x x x subb c0 2 2 d0 3 2 e0 5 2 f0 4 3 -- - - b-=m - - x x x x swi -- - - -- - - -- - - -- - - 3f c 1 swi - 1 - - - - tab -- - - -- - - -- - - -- - - 16 2 1 b=a - - x x 0 - tap -- - - -- - - -- - - -- - - 06 2 1 ccr=a x x x x x x tba -- - - -- - - -- - - -- - - 17 2 1 a=b - - x x 0 - tpa -- - - -- - - -- - - -- - - 07 2 1 a=ccr - - - - - - tst -- - - -- - - 6d 7 2 7d 6 3 -- - - m-0 - - x x 0 0 tsta -- - - -- - - -- - - -- - - 4d 2 1 a-0 - - x x 0 0 tstb -- - - -- - - -- - - -- - - 5d 2 1 b-0 - - x x 0 0 tsx -- - - -- - - -- - - -- - - 30 4 1 x=s+1 - - - - - - txs -- - - -- - - -- - - -- - - 35 4 1 s=x-1 - - - - - - wai -- - - -- - - -- - - -- - - 3e 9 1 wait - 5 - - - - cc notes: - not changed x updated according to data 0 set to 0 1 set to 1 3 c|=(msn>9) 5 Set when interrupt occurs. If previously set, a Non-Maskable interrupt is required to exit the wait state.