ostypes.inc 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. {
  2. $Id$
  3. This file is part of the Free Pascal run time library.
  4. Copyright (c) 1999-2000 by Michael Van Canneyt,
  5. member of the Free Pascal development team.
  6. OS dependant types internal to the Unix RTL.
  7. See the file COPYING.FPC, included in this distribution,
  8. for details about the copyright.
  9. This program is distributed in the hope that it will be useful,
  10. but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  12. **********************************************************************}
  13. {
  14. Linux system calls take arguments as follows :
  15. i386 m68k ppc
  16. %eax %d0 r0 System call number
  17. %ebx %d1 r3 first argument
  18. %ecx %d2 r4 second argument
  19. %edx %d3 r5 third argumens
  20. %esi %d3 r6 fourth argument
  21. %edi %d4 r7 fifth argument
  22. That is why we define a special type, with only these arguments
  23. To make it processor independent, we don't give any system dependent
  24. names, but the rather abstract reg1,reg2 etc;
  25. }
  26. SysCallRegs=record
  27. reg1,reg2,reg3,reg4,reg5,reg6 : longint;
  28. end;
  29. PSysCallRegs=^SysCallRegs;
  30. TSysCallRegs=SysCallRegs;
  31. ptimespec= ^timespec;
  32. timespec = packed record
  33. tv_sec : time_t;
  34. tv_nsec : clong;
  35. end;
  36. {
  37. $Log$
  38. Revision 1.1 2002-11-12 14:37:59 marco
  39. * Parts of new unix rtl
  40. }