Thread overview
lidt assembly instruction argument?
May 30, 2004
Braden MacDonald
Jun 02, 2004
Braden MacDonald
Jun 03, 2004
Walter
Jun 25, 2004
Braden MacDonald
May 30, 2004
Hi Everyone,
 I'm having some trouble getting an IDT loaded into the processor.
I though
that the lidt instruction took a pointer (e.g. 32-bits), but dmd only
compiles
my code if I pass it a 64-bit argument. What is this argument supposed
to be?

 Thanks a lot.
  Braden


June 02, 2004
See the example at: http://osdev.neopages.net/tutorials/interrupts.3.php (Scroll down to the bottom). Here, NASM takes a pointer to a 6-byte structure for its lidt instruction. I don't see why D asks for an 8 byte parameter.

Braden MacDonald wrote:
> Hi Everyone,
>  I'm having some trouble getting an IDT loaded into the processor.
> I thought that the lidt instruction took a pointer (e.g. 32-bits), but
> dmd only compiles my code if I pass it a 64-bit argument. What is this
> argument supposed  to be?
> 
>  Thanks a lot.
>   Braden

--
Braden MacDonald
June 03, 2004
I'll check it out. In the meantime, you can just use db's to put in the right bits for the instruction you want.


June 25, 2004
In article <c9mp8b$1vlp$2@digitaldaemon.com>, Walter says...
> Braden says...
> > Hi Everyone,
> > I'm having some trouble getting an IDT loaded into the processor.
> > I thought that the "lidt" instruction took a pointer (e.g. 32-bits),
> > but dmd only compiles my code if I pass it a 64-bit argument.
> > What is this argument supposed to be?
> > 
> > Thanks a lot.
> >  Braden
> 
>I'll check it out. In the meantime, you can just use db's to put in the right bits for the instruction you want.

 Any updates on this?  If not, how do db's using D inline assembler?