> `@1; > ` tst.l D0; > ` blt.s @3; > > `@2; > ` move.l (a0)+, (a1)+; > ` dbra d0,@2; > >the problem is that FB gives "Assembler bad value." What does this mean?! Try removing the space after the comma in the following statement: ` move.l (a0)+,(a1)+ BTW, you don't need the ; after every statement. That is the equivalent of the FB ' character for comments. Also the label @3 appears to be missing. Maybe you just didn't copy it into the above code snippet. But if it is indeed missing, it would be the equivalent of saying GOTO "myLabel" without having "myLabel" typed anywhere in the program. Lastly, this doesn't seem to be something that needs to be in assembler at all. A loose translation would be: IF REGISTER(D0)<0 THEN GOTO "@3" FOR i=1 TO REGISTER(D0) 'copy memory NEXT i I only have a working knowledge of assembler, so someone may post a correction on this. :-) ____________ wave (Toronto, Canada)