delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2001/06/09/16:00:20

From: Jonathan Kirwan <jkirwan AT easystreet DOT com>
Newsgroups: comp.lang.asm.x86,comp.os.msdos.djgpp
Subject: Re: error linking asm module
Approved: CLAX86 Moderators <ccrayne AT crayne DOT org>
Date: Sat, 9 Jun 2001 19:45:48 +0000 (UTC)
Organization: Excite AT Home - The Leader in Broadband http://home.com/faster
Message-ID: <t8o4it445g755gss5n541surq34n5d3c01@4ax.com>
Sender: clax86 AT odin DOT asgard
References: <kIpU6.5025$p%4 DOT 520503 AT newsread2 DOT prod DOT itd DOT earthlink DOT net>
Mime-Version: 1.0
X-CLAX86-Policy: http://www.pacificsites.com/~ccrayne/clax86.html
X-CLAX86-Faq: http://www2.dgsys.com/~raymoon/x86faqs.html
X-CLAX86-Info-1: Send submissions to comp-lang-asm-x86 AT moderators DOT isc DOT org
X-CLAX86-Info-2: Send technical complaints to ccrayne AT crayne DOT org
X-CLAX86-Info-3: Send complaints about policy to ccrayne AT crayne DOT org
X-Comment: moderators do not necessarily agree or disagree with this article.
X-Newsreader: Forte Agent 1.8/32.548
X-Complaints-To: newsabuse AT supernews DOT com
Lines: 31
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

I'm not the least bit familiar with AT&T syntax, using only MASM.  I'm
not in COMD, but in CLAX.  But I've a few questions.


On Sat, 09 Jun 2001 13:41:36 GMT, rendeg AT my-dejanews DOT com (Rennie
deGraaf) wrote:

>    and 0x01, %eax

Is this intentional?  I noticed that elsewhere, you appeared to use a
'$' before inline instruction constants (code space.)  Here, there is
no '$'.

>    movb $_buffer, %cl

Given what I can guess about the syntax, this attempts to move the
address of _buffer to CL.  Of course, the address is 32 bits and CL is
only 8.  Is this a possible source for the error?  And also, where do
you initialize the upper 24 bits of ECX?  I see you save it, but I
must have missed where you initialize it.

>    movb %al, _newkey(%ecx)

What does this do??  And should there be a $ in front of the _newkey?
I might have guessed that ECX is a pointer, but above you only init 8
bits of the address.  So that can't be it.

Hopefully someone better informed will help.

Jon

- Raw text -


  webmaster     delorie software   privacy  
  Copyright 2019   by DJ Delorie     Updated Jul 2019