* Some mods.

This commit is contained in:
marco 2002-12-18 16:46:37 +00:00
parent 9cf17e0164
commit 821c826043
2 changed files with 24 additions and 17 deletions

View File

@ -19,7 +19,7 @@
{$ASMMODE ATT} {$ASMMODE ATT}
function Do_SysCall(sysnr:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL0']; function FpSysCall(sysnr:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL0'];
asm asm
{ load the registers... } { load the registers... }
@ -33,7 +33,7 @@ asm
.LSysc: .LSysc:
end; end;
function Do_SysCall(sysnr,param1 : TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL1']; function FpSysCall(sysnr,param1 : TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL1'];
asm asm
{ load the registers... } { load the registers... }
@ -48,7 +48,7 @@ asm
.LSysc: .LSysc:
end; end;
function Do_SysCall(sysnr,param1,param2 : TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL2']; function FpSysCall(sysnr,param1,param2 : TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL2'];
asm asm
{ load the registers... } { load the registers... }
@ -65,7 +65,7 @@ asm
end; end;
function Do_SysCall(sysnr,param1,param2,param3:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL3']; function FpSysCall(sysnr,param1,param2,param3:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL3'];
asm asm
{ load the registers... } { load the registers... }
@ -82,7 +82,7 @@ asm
.LSysc: .LSysc:
end; end;
function Do_SysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL4']; function FpSysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL4'];
asm asm
{ load the registers... } { load the registers... }
@ -100,7 +100,7 @@ asm
.LSysc: .LSysc:
end; end;
function Do_SysCall(sysnr,param1,param2,param3,param4,param5 : TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL5']; function FpSysCall(sysnr,param1,param2,param3,param4,param5 : TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL5'];
asm asm
{ load the registers... } { load the registers... }
@ -119,7 +119,7 @@ asm
.LSysc: .LSysc:
end; end;
function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6 : TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL6']; function FpSysCall(sysnr,param1,param2,param3,param4,param5,param6 : TSysParam):TSysResult; assembler;[public,alias:'FPC_SYSCALL6'];
asm asm
{ load the registers... } { load the registers... }
@ -147,7 +147,7 @@ end;
--- Main:The System Call Self --- --- Main:The System Call Self ---
*****************************************************************************} *****************************************************************************}
Procedure Do_SysCall( callnr:longint;var regs : SysCallregs );assembler; Procedure FpSysCall( callnr:TSysParam;var regs : SysCallregs );assembler;
{ {
This function puts the registers in place, does the call, and then This function puts the registers in place, does the call, and then
copies back the registers as they are after the SysCall. copies back the registers as they are after the SysCall.
@ -187,7 +187,7 @@ Function SysCall( callnr:longint;var regs : SysCallregs ):longint;
SysCall result in errno. Otherwise, it returns the SysCall return value SysCall result in errno. Otherwise, it returns the SysCall return value
} }
begin begin
do_SysCall(callnr,regs); FpSysCall(callnr,regs);
if regs.reg1<0 then if regs.reg1<0 then
begin begin
{$IFDEF SYSCALL_DEBUG} {$IFDEF SYSCALL_DEBUG}
@ -227,7 +227,10 @@ end;
{ {
$Log$ $Log$
Revision 1.2 2002-11-16 15:37:47 marco Revision 1.3 2002-12-18 16:46:37 marco
* Some mods.
Revision 1.2 2002/11/16 15:37:47 marco
* TSysParam + result moved to -h * TSysParam + result moved to -h
Revision 1.1 2002/11/12 13:31:32 marco Revision 1.1 2002/11/12 13:31:32 marco

View File

@ -34,16 +34,20 @@ Type
TSysParam = Longint; TSysParam = Longint;
function Do_SysCall(sysnr:LONGINT):longint; external name 'FPC_DOSYS0'; function Do_SysCall(sysnr:TSysParam):TSysResult; external name 'FPC_SYSCALL0';
function Do_SysCall(sysnr,param1:longint):longint; external name 'FPC_DOSYS1'; function Do_SysCall(sysnr,param1:TSysParam):TSysResult; external name 'FPC_SYSCALL1';
function Do_SysCall(sysnr,param1,param2:LONGINT):longint; external name 'FPC_DOSYS2'; function Do_SysCall(sysnr,param1,param2:TSysParam):TSysResult; external name 'FPC_SYSCALL2';
function Do_SysCall(sysnr,param1,param2,param3:LONGINT):longint; external name 'FPC_DOSYS3'; function Do_SysCall(sysnr,param1,param2,param3:TSysParam):TSysResult; external name 'FPC_SYSCALL3';
function Do_SysCall(sysnr,param1,param2,param3,param4:LONGINT):longint; external name 'FPC_DOSYS4'; function Do_SysCall(sysnr,param1,param2,param3,param4:TSysParam):TSysResult; external name 'FPC_SYSCALL4';
function Do_SysCall(sysnr,param1,param2,param3,param4,param5:LONGINT):longint; external name 'FPC_DOSYS5'; function Do_SysCall(sysnr,param1,param2,param3,param4,param5:TSysParam):TSysResult; external name 'FPC_SYSCALL5';
function Do_SysCall(sysnr,param1,param2,param3,param4,param5,param6:TSysParam):TSysResult; external name 'FPC_SYSCALL5';
{ {
$Log$ $Log$
Revision 1.1 2002-11-16 15:37:47 marco Revision 1.2 2002-12-18 16:46:37 marco
* Some mods.
Revision 1.1 2002/11/16 15:37:47 marco
* TSysParam + result moved to -h * TSysParam + result moved to -h
Revision 1.4 2002/10/16 18:44:00 marco Revision 1.4 2002/10/16 18:44:00 marco