Hi,

On Wed, Nov 8, 2023 at 2:21 PM Bernd Böckmann via Freedos-devel
<freedos-devel@lists.sourceforge.net> wrote:
>
> the tests I did showed that FreePascal is perfectly capable of producing
> reasonably small binaries fitting the small memory model, if you do not
> require the full language feature set (stay away from ObjFpc / Delphi
> modes). SysUtils and exception handling pulls in a significant amount of
> code, so you either stick with plain FPC or TP modes or have to live
> with large memory model.

FPC mode is the default and (I believe) allows function overloading
and structured return values (with slightly different function pointer
syntax).

> I am not that interested in Turbo Pascal compatibility, so I can not say
> anything about it. For me, FreePascal provides some benefits over Turbo
> Pascal, taking my specific use case into account: e.g. 64-bit arithmetic
> in 8086 real mode.

I believe int64 was originally from Delphi. (Isn't there also "long
long" support in OpenWatcom via "-za99"?)

> To the specific problem: I have to provide a FAR pointer to the BIOS as
> a member of an INT13 device access packet. That pointer shall point to a
> 512 byte array, for which I get a near pointer via the @ address
> operator. This near pointer has to be converted to a far pointer.
> Because this operation is clearly defined for the small memory model, I
> asked if someone knows that a built-in solution exists. But perhaps this
> question is better addressed to the FreePascal community. In the
> meantime, I will use the function from my last mail.

Dunno, directly ask FPC guys MarcoV or NickySn. Sometimes they
frequent the BTTR Forum too.


_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to