> > Dis816 0.00 - 21-May-2017 - 65816 disassembly routines : 1ݤDis_Name(cpu%):cpu%=65:="65x02" ="65816" (;ݤDis_Code(cpu%,Ptr%,Data%): op%,ins%,md%,b0%,num%,sz% 2Qnum%=1:op%=?Data%:ins%=op%32:md%=(op%31)4:b0%=(op%3):sz%=2:cpu%=65:sz%=1 <)X%!0=0:$(X%+4)=_diss:X%?3=num%:=num% F ݤ_diss PT(op%&F)=8:="PHPCLCPLPSECPHACLIPLASEIDEYTYATAYCLVINYCLDINXSED",1+3*(op%16),3) Z@(op%&8F)=&8A:="TXATXSTAXTSXDEXPHXNOPPLX",3*(op%16)-23,3) dop%=&20:="JSR "+mde(3) n;(op%&9F)=0:X%?2=(op%64):="BRK***RTIRTS",ins%*3+1,3) x)(op%&DF)=&5A:="PHYPLY",ins%*3-5,3) op%=&89:="BIT "+mde(2) $b0%=1:=alu(ins%)+" "+mde(md%) *(op%31)=&12:=alu(ins%)+" "+mde(16) $(op%&EF)=&64:="STZ "+mde(md%) ((op%&FD)=&9C:="STZ "+mde(b0%*2+3) 3(op%&D7)=&96:=rot(ins%)+" "+mde(md%3)+",Y" ((op%7)=6:=rot(ins%)+" "+mde(md%) P(op%&1F)=16:num%=2:="B"+"PLMIVCVSCCCSNEEQ",1+2*ins%,2)+" "+jr(Data%?1,1) <(op%&8F)=10:=rot((ins%+(md%4)*1.5)((md%>4)1))+" A" 9(op%&E7)=4:="T"+"SR",1+(md%4),1)+"B "+mde(md%3) 6(op%&D3)=&C0:=bxy(ins%)+" "+mde(((md%3)-1)3) $(op%&E7)=&24:="BIT "+mde(md%) ,(op%&C7)=&84:=bxy(ins%)+" "+mde(md%) ;(op%&FD)=&A0:="LD"+"YX",1+((op%2)2),1)+" "+mde(2) R(op%&CF)=&4C:op%<>&5C:X%?2=64:="JMP "+"(",op%>&5F)+mde(md%)+")",op%>&5F) 2op%=&80:num%=2:X%?2=64:="BRA "+jr(Data%?1,1) " 65816 instructions ,2b0%=3:(md%3)<>2:=alu(ins%)+" "+mde(md%+8) 6k(op%&0F)=&0B:X%?2=((op%=&6B)64):="PHDTCSPLDTSCPHKTCDRTLTDCPHBTXYPLBTYXWAISTPXBAXCE",(op%16)*3+1,3) @j((op%-&20)&DF)=&42:X%?2=((op%=&82)64):num%=3:="PERBRL",(op%128)*3+1,3)+" "+jr(Data%!1 &FFFF,2) J^(op%&DF)=&C2 op%=2:num%=2:="REPSEPCOP",(ins%1)*3+1-6*(op%=2),3)+" #&"+h0(Data%?1,2) Top%=&22:="JSL "+mde(11) ^op%=&5C:="JMP "+mde(11) h2op%=&FC:num%=3:="JSR (&"+h0(Data%!1,4)+",X)" r8op%=&DC:X%?2=64:num%=3:="JMP [&"+h0(Data%!1,4)+"]" |](op%&EF)=&44:num%=3:="MVPMVN",(op%16)*3-11,3)+" &"+h0(Data%?1,2)+",&"+h0(Data%?2,2) A(op%&DF)=&D4:="PEIPEA",ins%*3-17,3)+" "+mde((ins%1)*2+1) op%=&42:="WDM" !X%?2=128:="EQUB &"+h0(op%,2) : 3ݤalu(A%)="ORAANDEORADCSTALDACMPSBC",A%*3+1,3) 3ݤrot(A%)="ASLROLLSRRORSTXLDXDECINC",A%*3+1,3) 3ݤbxy(A%)="***BIT***STZSTYLDYCPYCPX",A%*3+1,3) : * 0 - (&nn,X) 8 - &nn,S * 1 - &nn 9 - [&nn] $ 2 - #&nn #&nnnn 10 - , 3 - &nnnn 11 - &nnnnnn . 4 - (&nn),Y 12 - (&nn,S),Y , 5 - &nn,X 13 - [&nn],Y $ 6 - &nnnn,Y 14 - . 7 - &nnnn,X 15 - &nnnnnn,X & 16 - (&nn) 0 ݤmde(A%) :Q A%=0 A%=4 A%=16:num%=2:="(&"+h0(Data%?1,2)+",X",A%=0)+")"+",Y",A%=4) DA A%=1 A%=5 :num%=2:="&"+h0(Data%!1,2)+",X",A%=5) N? A%=2 :num%=1+sz%:="#&"+h0(Data%!1,sz%*2) XL A%=3 A%=6 A%=7 :num%=3:="&"+h0(Data%!1,4)+",Y",A%=6)+",X",A%=7) bT A%=8 A%=12 :num%=2:="(",A%=12)+"&"+h0(Data%?1,2)+",S"+"),Y",A%=12) lG A%=9 A%=13 :num%=2:="[&"+h0(Data%?1,2)+"]"+",Y",A%=13) vB A%=11 A%=15 :num%=4:="&"+h0(Data%!1,6)+",X",A%=15) ="?" : Xݤjr(A%,sz%):sz%=1:A%<128:="&"+h0(Ptr%+A%+2,4) sz%=1:="&"+h0(Ptr%+A%+2-256,4) AA%<32768:="&"+h0(Ptr%+A%+3,4) ="&"+h0(Ptr%+A%+2-32768,4)