Hi Rugxulo,
> On Nov 7, 2022, at 4:11 AM, Rugxulo <[email protected]> wrote:
>
> 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.)
Yes. In TP 5.5/7.0, {$F-} is the default. The default for any
function/procedure uses near call/return model. Func/Procs in units that are
declared in the interface section use far call/ret process.
>
>> Also, you may need assign the address to a plain pointer and typecast the
>> call.
>
> Is that needed??
Most likely not needed. But, if all else fails, it may be something to try.
>> 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
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel