Message-ID: <8D53104ECD0CD211AF4000A0C9D60AE33831BA@probe-2.Acclaim-Euro.net> From: Shawn Hargreaves To: djgpp AT delorie DOT com Subject: Re: automatic register allocation && traceback Date: Wed, 23 Dec 1998 12:22:14 -0000 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.0.1460.8) Content-Type: text/plain Reply-To: djgpp AT delorie DOT com > asm("pushw %%es\n\t" > "movw %0,%%es\n\t" Argument %0 is your length counter, not the destination selector. > "movb %%ebx,%%ecx\n\t" Don't you mean to say movl? I'm surprised this even assembles... But why are you wasting so much time on writing this routine, when movedata() already does what you need? I think it is crazy to make your own version of something that already exists, especially for such a simple routine where there is no possible way that you could ever make it more efficient than the libc routine. Look at the source if you are in any doubt (djgpp/src/libc/pc_hw/mem/md.S). Shawn Hargreaves.