delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2002/02/08/12:00:05

X-Authentication-Warning: delorie.com: mailnull set sender to djgpp-bounces using -f
From: "Joel Saunders" <jbs30000 AT aol DOT com>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Uhm, nobody knows the answer or...
Date: Fri, 8 Feb 2002 16:52:11 +0000 (UTC)
Organization: Mailgate.ORG Server - http://www.Mailgate.ORG
Lines: 28
Message-ID: <5563ab859c72dffdd2ded7c0f0edf714.62691@mygate.mailgate.org>
References: <6e0d77f39bba940fee0e0149fb76a996 DOT 62691 AT mygate DOT mailgate DOT org> <a40i4b$oil$1 AT nets3 DOT rz DOT RWTH-Aachen DOT DE>
NNTP-Posting-Host: spider-mtc-ti051.proxy.aol.com
X-Trace: news.mailgate.org 1013174994 26595 64.12.101.171 (Fri Feb 8 17:52:11 2002)
X-Complaints-To: abuse AT mailgate DOT org
NNTP-Posting-Date: Fri, 8 Feb 2002 16:52:11 +0000 (UTC)
Injector-Info: news.mailgate.org; posting-host=spider-mtc-ti051.proxy.aol.com; posting-account=62691; posting-date=1013174994
User-Agent: Mailgate Web Server
X-URL: http://mygate.mailgate.org/mynews/comp/comp.os.msdos.djgpp/5563ab859c72dffdd2ded7c0f0edf714.62691%40mygate.mailgate.org
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Ok, I have the variables:
char *Screen_PTR = (char *)(0xB8000 + __djgpp_conventional_base);
char My_Name[9] = {"J O E L "};
I have the macro
#define Mov_Byte(Src, Dest, Mov_Size)\
        __asm__ __volatile__(\
                "cld\n\t"\
                "rep\n\t"\
                "movsb"\
                : :"S" (Src), "D" (Dest), "c" (Mov_Size))
This works:
Mov_Byte(&My_Name[0], &Screen_PTR[0], 8);
However, if I rewrite the macro like this:
#define Mov_Byte(Src, Dest, Mov_Size)\
        __asm__ __volatile__(\
                "cld\n\t"\
                "rep\n\t"\
                "movsb"\
                : :"S" (Src), "D" (Dest), "c" (Mov_Size)\
                :"%ecx", "%esi", "%edi"
And try the same thing, then when making the program, I get this error:
Error: Can't find a register in class `CREG' while reloading `asm'.




-- 
Posted via Mailgate.ORG Server - http://www.Mailgate.ORG

- Raw text -


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