X-Git-Url: https://jxself.org/git/?p=b43-tools.git;a=blobdiff_plain;f=assembler%2FREADME;fp=assembler%2FREADME;h=fe8e12e83f120323e267c79aeb7ca45755e5f1c4;hp=d9e1362b5525fe00676bfb238a4447bc273bcc44;hb=d06bbc1f605d2b235af68cb0500b3c32faebfda9;hpb=65c5a1da64ebbc6d1827080c054da703f4779f28 diff --git a/assembler/README b/assembler/README index d9e1362..fe8e12e 100644 --- a/assembler/README +++ b/assembler/README @@ -16,6 +16,7 @@ sub | A,B,rD | Subtract | rD=A-B sub. | A,B,rD | Sub, set Carry | rD=A-B SaveCarry subc | A,B,rD | Sub with Carry | rD=A-B-Carry subc. | A,B,rD | Sub with Carry, set Carry | rD=A-B-C SaveCarry +mul | A,B,rD | multiply (rev 11+ only) | spr06d=lsb; rD=msb Branch instructions: jmp | l | Uncond. jump (virtual instr.) | PC=l @@ -33,6 +34,10 @@ jl | A,B,l | Jump if less | if(A=B) PC=l jg | A,B,l | Jump if greater | if(A>B) PC=l jle | A,B,l | Jump if less or equal | if(A<=B) PC=l +jdn | A,B,l | Jump if diff is < 0, no carry | if(nc(A-B)<0) PC=l +jdpz | A,B,l | Jump if diff is >= 0, no carry | if(nc(A-B)>=0) PC=l +jdp | A,B,l | Jump if diff is > 0, no carry | if(nc(A-B)>0) PC=l +jdnz | A,B,l | Jump if diff is <= 0, no carry | if(nc(A-B)<=0) PC=l call | lrX,l | Store PC, call function | lrX=PC; PC=l calls | l | Store PC, call function | PC->stack; PC=l ret | lrX,lrY | Store PC, ret from func | lrX=PC; PC=lrY