> [snip]
> > +print '    "\tpopl %ecx\n"' . " \\\n";=0A=
> > +print '    "\tsubl $" #argsize ", %esp\n"' . " \\\n";=0A=
> > +print '    "\tjmp *%ecx\n"' . " \\\n";=0A=
> 
> This appears to be broken;  you need to *add* the argsize instead
> of subtracting it, and furthermore the return address lies now
> *above* the arguments after the stack permutation you did above ;-)
> 
> What about this instead of the last three lines:
> 
>   print "\taddl $" #argsize ", %esp\n";
>   print "\tret\n";

I did that and it does not solve the problem : it crashes at the same
GL call (glGetString) but this time at address 0x00000000 and not
0x00001F00 as before.

How can I help debugging this further (except by looking at an x86 ASM
book :-) ) ?

-- 
               Lionel Ulmer   -   [EMAIL PROTECTED]
    My Advogato Wine diary : http://www.advogato.org/person/bbrox/

Reply via email to