Newsgroups: comp.os.msdos.djgpp From: Sam Davies Subject: Asm routine returns Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-ID: Mime-Version: 1.0 Date: Mon, 6 Oct 1997 01:12:18 GMT Lines: 20 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Question: I've got an asm routine (in NASM) that seems to work perfectly (I can call it from the main() function with no apparent problems). But when I call it from certain contexts (for example from a member function of a class), I get the following error when stepping through the statement after the routine: Program has received signal: SIGABRT, Aborted I know that this error is actually a result of calling my routine, since I can comment out the call to the function, and there's no problem... So I'm assuming it must be that I messed up within the routine... I modify SI, DI, BP, and DS, but I push and pop all these at the beginning and end... Is there anything else that I could be screwing up in my routine that is causing this strange behavior? I don't have to save the other general registers, do I? -- Sam Davies