[fpc-pascal] Interruption handling on i8086
Tomas Hajny
xhajt03 at hajny.biz
Sat Apr 10 16:05:28 CEST 2021
On 2021-04-09 19:56, Guillermo via fpc-pascal wrote:
Hi,
> I'm doing DOS development for fun and, after installing the compiler
> (was quite hard), I'm having problems handling interrupts.
>
> I started with keyboard and it doesn't work. The handler declaration:
>
> procedure DOS_KbdHandler; interrupt;
>
> but compiler says:
>
> keybrd.inc(14,29) Warning: Calling convention directive ignored:
> "OldFPCCall"
I believe that you need to add the "far" modifier after the "interrupt" - at least this has been the case with TP/BP and is probably needed at least for some memory models supported with FPC for i8086. The {$F+} directive as mentioned in your later post is an alternative, but not needed for the whole program (it might make it less efficient). I don't know if there are any other caveats.
Tomas
More information about the fpc-pascal
mailing list