thank's for the hint. I could now fix unit cpu.pp
The problem was the calling convention
(all assambly routines assumed parameters on the stack - but now they are in registers in fact)

But {$calling oldfpccall} didn't work (neither on top of the unit nor in interface or implementation)

I had to define the calling convention behind every assembly routine
(eg: function getPITValue( var val: int64): bool32; assembler; oldfpccall;)

Now I hope this will help with graphix too.

regards Peter



Jonas Maebe schrieb:

On 25 Nov 2009, at 11:46, Schatzl Thomas wrote:

Hi,

is there anyone who ported cpu.pp (from Thomas Schatzl) to fpc 2.2.4
(target go32v2)

 it compiles out of the box with the 2.2.4 go32v2 compiler.

You will want to add a {$CALLING PASCAL} statement at the top of the units - some assembly code assumes some (ancient) calling convention.

I think that should be {$calling oldfpccall} instead.


Jonas
_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

__________ NOD32 4635 (20091125) Information __________

Diese E-Mail wurde vom NOD32 antivirus system geprüft
http://www.nod32.com



_______________________________________________
fpc-pascal maillist  -  fpc-pascal@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-pascal

Reply via email to