Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Programming > Assembly x86 > Re: Problem wit...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 2 of 8 Topic 4583 of 4729
Post > Topic >>

Re: Problem with fasm

by Frank Kotler <spamtrap@[EMAIL PROTECTED] > Mar 22, 2008 at 10:24 AM

suchi_01 wrote:
> Hi All,
>                   There is a complicated issue here. I have downloaded
> fasm source of a driver and want to integrate it to my kernel.
> However, there is a problem:
> 
> 1. If i call a FASM function from within C code (kernel), it is not
> able to return back to the next line in C Code

What *does* it do?

> 2. If i call a NASM function from within C Code, it works properly (it
> returns back to next line in C Code)
> 
> Here are the code snippets:
> 
> NASM:
> 
> global <func name>
> 
> <func name>:
>              ret
> 
> 
> FASM:
> 
> public <func name>
> 
> <func name>:
>           ret
> 
> 
> Is there a global keyword or similar stuff in FASM?

"public", AFAIK. We need to tell Fasm a "format", too (in the source, 
not on the command line like Nasm). As a test, I just "converted" a Nasm 
demo I had to Fasm (just added "format elf", changed "global" to 
"public" and fixed up the section declaration). Worked fine. The only 
issue I can see is that I don't think Fasm sup****ts OMF. What format are 
you using?

Best,
Frank

;---------------
format elf

public getvendor

section ".text" executable
getvendor:
     pusha
     xor eax, eax
     cpuid
     mov eax, [esp + 36]
     mov [eax], ebx
     mov [eax + 4], edx
     mov [eax + 8], ecx
     mov byte [eax + 12], 0
     popa
     xor eax, eax
     ret
;-----------------

And the C caller...

#include <stdio.h>

void getvendor(char *vendorbuf);

int main(void)
  {char vendorbuf[13];
   getvendor(vendorbuf);

   puts(vendorbuf);
   return 0;
  }
 




 8 Posts in Topic:
Problem with fasm
suchi_01 <spamtrap@[E  2008-03-22 01:18:36 
Re: Problem with fasm
Frank Kotler <spamtra  2008-03-22 10:24:31 
Re: Problem with fasm
suchi_01 <spamtrap@[E  2008-03-23 22:00:36 
Re: Problem with fasm
Frank Kotler <spamtra  2008-03-24 07:10:39 
Re: Problem with fasm
suchi_01 <spamtrap@[E  2008-03-23 22:52:50 
Re: Problem with fasm
Frank Kotler <spamtra  2008-03-24 11:41:15 
Re: Problem with fasm
suchi_01 <spamtrap@[E  2008-03-24 04:19:06 
Re: Problem with fasm
suchi_01 <spamtrap@[E  2008-03-24 00:54:37 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan12V112 Fri Jul 25 15:09:20 CDT 2008.