Hi,
On Sun, Nov 6, 2022 at 9:08 PM Jerome Shidel <[email protected]> wrote:
>
> Make sure your compiling to the correct memory model. (I think huge, but
> you’ll need to double check that)
Default is Small, e.g. "-WmSmall". I assume "-WmCompact" would work
better for you?
> You may need to ensure the actual procedure is declared with far.
>
> Procedure Test; far;
> Begin
> End;
In old freeware TP 5.5, that would be {$F+} at the top and {$F-} at
the bottom of the procedure. (I believe all procedures within the same
unit / file are near while external procedures are far by default.)
> Also, you may need assign the address to a plain pointer and typecast the
> call.
Is that needed??
> Also, there are also compiler directives for FPC regarding compatibility.
Default dialect is "fpc", which is less strict than {$mode tp}, e.g.
it does change function pointer syntax a bit, but it also gives you
structured return types and function overloading.
{$asmmode intel} is only default for {$mode tp} as well (but you can
manually enable it, too).
Don't forget you can also declare inline functions! (Like real
inlining, not just inline machine code.)
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel