Mail Archives: cygwin/2004/02/17/19:46:37
Williams, Gerald S (Jerry) wrote:
>> What about Linux syscalls? Will Cygwin emulation layer match
>> it?
> I just Googled "int 0x80". So THAT'S what you're
> trying to do. :-)
:-)
> No, I think your experiment shows that Cygwin is
> not emulating Linux syscalls at that level.
Really?
> Nor would I have expected it to.
Why not? c code, translated to asm with -c -S on linux box, can be later
compiled and linked with Cygwin's gcc and works fine. As you see, I have a
good reason to believe that nasm's int 0x80 will work too. So maybe I should
simply look for a nasm -> gcc's assembler translator?
> On the other hand, you can get at DOS functions,
> at least if you build your executable correctly.
> For example, the following:
>
> ; hello.asm
> [ORG 0x100]
>
> section .text
> global _start
>
> _start: mov ah,9
> mov dx, hello
> int 0x21
>
> mov ax,0x4c00
> int 0x21
>
> section .data
> hello db 'Hello, World', 13, 10, '$'
That was an easy example. But what if I want to fork? :-)
>> Is there a way I could force Cygwin's ld to work the way
>> Linux ld used to?
>
> I don't know about that, but you can specify the
> entry point explicitly:
>
> ld -e _start hello.o
Thanks! Now my hello.asm compiles well, is linked correctly, but still gives
an empty output.
Regards
Krzysztof Duleba
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
- Raw text -