Browse Source

* updates.

marco 25 years ago
parent
commit
d3d5cb5c1f
7 changed files with 320 additions and 186 deletions
  1. 108 0
      rtl/bsd/bsdport.txt
  2. 5 2
      rtl/bsd/linux.pp
  3. 7 4
      rtl/bsd/syscalls.inc
  4. 6 2
      rtl/bsd/sysconst.inc
  5. 8 5
      rtl/bsd/syslinux.pp
  6. 181 171
      rtl/bsd/sysnr.inc
  7. 5 2
      rtl/bsd/systypes.inc

+ 108 - 0
rtl/bsd/bsdport.txt

@@ -0,0 +1,108 @@
+$Id$
+
+1 FreeBSD status and notes. (kept on CVS because I work on several places)
+-----------------------------------------------------------------------------
+
+At the moment that you are reading this, FPC for FreeBSD is still a dream.
+We are currently working actively on FreeBSD support.
+
+NI=not implemented yet
+req=required for compiler
+noreq? = probably not required, but not checked.
+
+syscall   status        comment
+------------------------------------------------------------------------
+Readdir   req           implemented from scratch, not working. (since this
+                        call doesn't exist on FBSD and FindFirst is based on it.
+
+Clone()  NI noreq       Looks awfully complicated. Should be based on RFork.
+
+sysinfo  NI noreq       Not supported under BSD, not even by emulator
+uname    NI noreq       "        "       "    "   "   "    "   "
+                        (procedure based on this call are also commented
+                         (get* procs))
+
+signal   NI  noreq?     A *lot* of emulation code.
+alarm    NI  noreq?     Could be possible to port.
+pause    NI  noreq?     Also possible I think. Uses process information
+                        in linux-emu, that is why I didn't port directly.
+IOPERM   NI  noreq?     Concept doesn't exist on FreeBSD. No IO outside kernel?
+
+
+2 How to build a FreeBSD compiler.
+-----------------------------------------------------------------------------
+
+Comments, mistakes and suggestions to [email protected]
+
+The FreeBSD port is 99% experimental atm, though valid native binaries can be
+obtained. They mosttimes don't function yet.
+
+Supported are probably FreeBSD 3.x (3.2, 3.4 and 4.0-release tested).
+
+The procedure here is verbose, and for the most akward case.
+If you have linux support on on your FreeBSD machine, or operate on NFS or samba
+share (so that copying and using the sources in two systems is easier)
+some steps can be omitted or simplified. Just play with it.
+
+STEP A: create the RTL assembler files.
+
+1a. Copy all linux files to a new directory. (here called BSDBUILD), and
+1b. edit the makefile to NOT compile the i386 directory. (we do that by
+    hand for now) I do this by emptying the LOADEROBJECTS= line.
+2. Copy all bsd files over them.
+3. execute  make OPT='-Tlinux -dBSD -a -s -OG3p3' (with any i386 FPC compiler)
+    in directory BSDBUILD. This failed with some go32v2 versions (which wanted
+    to assemble anyway), but worked with several win32 and linux' snapshots.
+
+You know have .ppu's and .s  's for the RTL hopefully.
+
+STEP B: Create the compiler assembler sources;
+
+This will generate the .s files for the compiler.
+
+4. Copy the mppc386.bat file in the compiler/ directory, and delete anything but
+    the ppc386 line.
+5. Add "-Fu\BSDPATH\BSDBUILD -s -a -dBSD" to the line, and delete all %1 %2 options
+    which then look like this:
+
+ppc386 -O3p3 -Ch8000000 -dI386 -dGDB  -dBROWSERLOG -Sg pp.pas -Fu\BSDPATH\BSDBUILD -s -a -dBSD -Tlinux
+
+6. Execute this line in the compiler directory (direct or via script)
+
+
+STEP C: Building the binary
+
+7. Copy all necessary files
+    (- all *.s *.ppu files, both from compiler and BSDBUILD dir,
+     - compiler/link.res and
+     - compiler/ppas.sh
+     - Cut and paste of the DO_S script at the end of this document to file
+     - rtl/bsd/i386/*.s files
+     )
+     to a directory on the BSD machine.
+8. Change to the directory on the BSD machine, and run the script DO_S to assemble
+    .s files to .o files.
+9. Adapt link.res so that all paths to the BSD machine are right.
+10. run ppas.sh
+
+
+You know should have a native FreeBSD "pp" binary.
+
+------------------
+The DO_S script.
+------------------
+#!/bin/sh
+
+for i in *.s; do
+ flup=`basename $i .s`
+ as $i -o $flup.o
+ echo $i
+ echo $flup
+ done
+
+{
+$Log$
+Revision 1.1  2000-04-07 20:51:16  marco
+ * updates.
+
+}

+ 5 - 2
rtl/bsd/linux.pp

@@ -3418,7 +3418,7 @@ function MMap(const m:tmmapargs):longint;
 
 begin
   {Last argument (offset) is actually 64-bit under BSD. Therefore extra 0}
- do_syscall(syscall_nr_mmap,m.address,m.size,m.prot,m.flags,m.fd,m.offset,0);
+ MMap:=do_syscall(syscall_nr_mmap,m.address,m.size,m.prot,m.flags,m.fd,m.offset,0);
  LinuxError:=Errno;
 end;
 
@@ -3644,7 +3644,10 @@ End.
 
 {
   $Log$
-  Revision 1.10  2000-04-05 13:46:22  marco
+  Revision 1.11  2000-04-07 20:51:16  marco
+   * updates.
+
+  Revision 1.10  2000/04/05 13:46:22  marco
    * rest of syscalls has constants now
 
   Revision 1.9  2000/04/05 13:07:03  marco

+ 7 - 4
rtl/bsd/syscalls.inc

@@ -332,7 +332,7 @@ end;
 Function Sys_Rename(Oldname,Newname:pchar):longint;
 
 begin
-  sys_rename:=do_syscallsyscall_nr_rename,longint(oldname),longint(newname));
+  sys_rename:=do_syscall(syscall_nr_rename,longint(oldname),longint(newname));
 end;
 
 Function Sys_Stat(Filename:pchar;var Buffer: stat):longint;
@@ -454,12 +454,15 @@ end;
 Procedure Sys_Exit(ExitCode:longint);
 
 begin
-  do_syscall(syscall_nr_,exitcode);
+  do_syscall(syscall_nr_exit,exitcode);
 end;
 
 {
   $Log$
-  Revision 1.11  2000-04-05 13:58:40  marco
+  Revision 1.12  2000-04-07 20:51:17  marco
+   * updates.
+
+  Revision 1.11  2000/04/05 13:58:40  marco
    * syscall variablenames reintroduced.
 
   Revision 1.10  2000/03/16 16:18:12  marco
@@ -494,4 +497,4 @@ end;
   Revision 1.1  2000/02/02 15:41:56  marco
    * Initial BSD version. Still needs a lot of work.
 
-}
+}

+ 6 - 2
rtl/bsd/sysconst.inc

@@ -33,7 +33,8 @@ Const
   Open_ASync    = $40;
   Open_FSync    = $80;
   Open_NoFollow = $100;
-  Open_Create   = $200;
+  Open_Create   = $200;       {BSD convention}
+  Open_Creat    = $200;       {Linux convention}
   Open_Trunc    = $400;
   Open_Excl     = $800;
 
@@ -86,7 +87,10 @@ Const
 
 {
   $Log$
-  Revision 1.3  2000-02-03 17:05:13  marco
+  Revision 1.4  2000-04-07 20:51:17  marco
+   * updates.
+
+  Revision 1.3  2000/02/03 17:05:13  marco
    * fixes and updates due to linux unit porting
 
   Revision 1.2  2000/02/02 16:35:29  marco

+ 8 - 5
rtl/bsd/syslinux.pp

@@ -174,7 +174,7 @@ end ['D0'];
 
 Function sbrk(size : longint) : Longint;
 begin
-  Sbrk:=do_syscall(197,0,size,3,$22,-1,0,0);
+  Sbrk:=do_syscall(syscall_nr_mmap,0,size,3,$22,-1,0,0);
   if ErrNo<>0 then
    Sbrk:=0;
 end;
@@ -325,7 +325,7 @@ Begin
 {$ifdef crtlib}
   Do_FileSize:=_rtl_filesize(Handle);
 {$else}
-  if do_SysCall(189,handle,longint(@info))=0 then
+  if do_SysCall(syscall_nr_fstat,handle,longint(@info))=0 then
    Do_FileSize:=Info.Size
   else
    Do_FileSize:=0;
@@ -338,7 +338,7 @@ Procedure Do_Truncate(Handle,Pos:longint);
 
 begin
 {$ifndef crtlib}
-  do_syscall(201,handle,pos,0);
+  do_syscall(syscall_nr_ftruncate,handle,pos,0);
   Errno2Inoutres;
 {$endif}
 end;
@@ -439,7 +439,7 @@ Function Do_IsDevice(Handle:Longint):boolean;
 var
   Data : array[0..255] of byte; {Large enough for termios info}
 begin
-  Do_IsDevice:=(do_SysCall(54,handle,$5401,longint(@data))=0);
+  Do_IsDevice:=(do_SysCall(syscall_nr_ioctl,handle,$5401,longint(@data))=0);
 end;
 
 
@@ -689,7 +689,10 @@ End.
 
 {
   $Log$
-  Revision 1.3  2000-03-17 12:58:57  marco
+  Revision 1.4  2000-04-07 20:51:17  marco
+   * updates.
+
+  Revision 1.3  2000/03/17 12:58:57  marco
    * some changes to ftruncate based procs. Added a "0" as extra parameter
 
   Revision 1.2  2000/03/16 16:21:10  marco

+ 181 - 171
rtl/bsd/sysnr.inc

@@ -14,176 +14,183 @@
  **********************************************************************}
 
 const
- syscall_nr_setup			= 0;
- syscall_nr_exit			= 1; {*}
- syscall_nr_fork			= 2; {*}
- syscall_nr_read			= 3; {*}
- syscall_nr_write			= 4; {*}
- syscall_nr_open			= 5; {*}
- syscall_nr_close			= 6; {*}
- syscall_nr_waitpid			= 7; {*}
- syscall_nr_creat			= 8;
- syscall_nr_link			= 9; {*}
- syscall_nr_unlink			= 10; {*}
- syscall_nr_execve                      = 59; {*}
- syscall_nr_chdir                       = 12;
- syscall_nr_time			= 13;
- syscall_nr_mknod			= 14; {*}
- syscall_nr_chmod			= 15; {*}
- syscall_nr_chown			= 16; {*}
- syscall_nr_break			= 17;
- syscall_nr_oldstat			= 18;
- syscall_nr_lseek			= 199; {*}
- syscall_nr_getpid			= 20; {*}
- syscall_nr_mount			= 21;
- syscall_nr_umount			= 22;
- syscall_nr_setuid			= 23;
- syscall_nr_getuid			= 24;  {*}
- syscall_nr_stime			= 25;
- syscall_nr_ptrace			= 26;
- syscall_nr_alarm			= 27;
- syscall_nr_oldfstat			= 28;
- syscall_nr_pause			= 29;
- syscall_nr_utime			= 138;  {*}
- syscall_nr_stty			= 31;
- syscall_nr_gtty			= 32;
- syscall_nr_access			= 33; {*}
- syscall_nr_nice			= 34;
- syscall_nr_ftime			= 35;
- syscall_nr_sync			= 36;
- syscall_nr_kill			= 37; {*}
- syscall_nr_rename			= 38; {*}
- syscall_nr_mkdir			= 136; {*}
- syscall_nr_rmdir			= 137; {*}
- syscall_nr_dup				= 41;
- syscall_nr_pipe			= 42; {*}
- syscall_nr_times			= 43;
- syscall_nr_prof			= 44;
- syscall_nr_brk				= 45;
- syscall_nr_setgid			= 46;
- syscall_nr_getgid			= 47; {*}
- syscall_nr_signal			= 48;
- syscall_nr_geteuid			= 25; {*}
- syscall_nr_getegid			= 43; {*}
- syscall_nr_acct			= 51;
- syscall_nr_phys			= 52;
- syscall_nr_lock			= 53;
- syscall_nr_ioctl			= 54;  {*}
- syscall_nr_fcntl			= 92;
- syscall_nr_mpx				= 56;
- syscall_nr_setpgid			= 57;
- syscall_nr_ulimit			= 58;
- syscall_nr_oldolduname			= 59;
- syscall_nr_umask			= 60; {*}
- syscall_nr_chroot			= 61;
- syscall_nr_ustat			= 62;
- syscall_nr_dup2			= 90; {*}
- syscall_nr_getppid			= 39; {*}
- syscall_nr_getpgrp			= 65;
- syscall_nr_setsid			= 66;
- syscall_nr_sigaction			= 46;
- syscall_nr_sgetmask			= 68;
- syscall_nr_ssetmask			= 69;
- syscall_nr_setreuid			= 70;
- syscall_nr_setregid			= 71;
- syscall_nr_sigsuspend			= 111; {*}
- syscall_nr_sigpending			= 52; {*}
- syscall_nr_sethostname			= 74;
- syscall_nr_setrlimit			= 75;
- syscall_nr_getrlimit			= 76;
- syscall_nr_getrusage			= 77;
- syscall_nr_gettimeofday		= 116; {*}
- syscall_nr_settimeofday		= 79;
- syscall_nr_getgroups			= 80;
- syscall_nr_setgroups			= 81;
- syscall_nr_select                      = 93; {*}
- syscall_nr_symlink			= 57; {*}
- syscall_nr_oldlstat			= 84;
- syscall_nr_readlink			= 58; {*}
- syscall_nr_uselib			= 86;
- syscall_nr_swapon			= 87;
- syscall_nr_reboot			= 88;
- syscall_nr_readdir			= 89;
- syscall_nr_mmap			= 197; {*}
- syscall_nr_munmap			= 91;
- syscall_nr_truncate			= 92;
- syscall_nr_ftruncate			= 201;  {*}
- syscall_nr_fchmod			= 94;
- syscall_nr_fchown			= 95;
- syscall_nr_getpriority			= 100; {*}
- syscall_nr_setpriority			= 96;  {*}
- syscall_nr_profil			= 98;
- syscall_nr_statfs			= 157; {*}
- syscall_nr_fstatfs			= 158; {*}
- syscall_nr_ioperm			= 101;
- syscall_nr_socketcall			= 102;
- syscall_nr_syslog			= 103;
- syscall_nr_setitimer			= 104;
- syscall_nr_getitimer			= 105;
- syscall_nr_stat			= 188; {*}
- syscall_nr_lstat			= 190; {*}
- syscall_nr_fstat			= 189; {*}
- syscall_nr_olduname			= 109;
- syscall_nr_iopl			= 110;
- syscall_nr_vhangup			= 111;
- syscall_nr_idle			= 112;
- syscall_nr_vm86old			= 113;
- syscall_nr_wait4			= 114;
- syscall_nr_swapoff			= 115;
- syscall_nr_sysinfo			= 116;
- syscall_nr_ipc				= 117;
- syscall_nr_fsync			=  95;  {*}
- syscall_nr_sigreturn			= 119;
- syscall_nr_clone			= 120;
- syscall_nr_setdomainname		= 121;
- syscall_nr_uname			= 122;
- syscall_nr_modify_ldt			= 123;
- syscall_nr_adjtimex			= 124;
- syscall_nr_mprotect			= 125;
- syscall_nr_sigprocmask			= 48;  {*}
- syscall_nr_create_module		= 127;
- syscall_nr_init_module			= 128;
- syscall_nr_delete_module		= 129;
- syscall_nr_get_kernel_syms		= 130;
- syscall_nr_quotactl			= 131;
- syscall_nr_getpgid			= 132;
- syscall_nr_fchdir			= 133;
- syscall_nr_bdflush			= 134;
- syscall_nr_sysfs			= 135;
- syscall_nr_personality			= 136;
- syscall_nr_afs_syscall			= 137;
- syscall_nr_setfsuid			= 138;
- syscall_nr_setfsgid			= 139;
- syscall_nr__llseek			= 140;
- syscall_nr_getdents			= 272;
- syscall_nr__newselect			= 142;
- syscall_nr_flock			= 131;
- syscall_nr_msync			= 144;
- syscall_nr_readv			= 145;
- syscall_nr_writev			= 146;
- syscall_nr_getsid			= 147;
- syscall_nr_fdatasync			= 148;
- syscall_nr__sysctl			= 149;
- syscall_nr_mlock			= 150;
- syscall_nr_munlock			= 151;
- syscall_nr_mlockall			= 152;
- syscall_nr_munlockall			= 153;
- syscall_nr_sched_setparam		= 154;
- syscall_nr_sched_getparam		= 155;
- syscall_nr_sched_setscheduler		= 156;
- syscall_nr_sched_getscheduler		= 157;
- syscall_nr_sched_yield			= 158;
- syscall_nr_sched_get_priority_max	= 159;
- syscall_nr_sched_get_priority_min	= 160;
- syscall_nr_sched_rr_get_interval	= 161;
- syscall_nr_nanosleep			= 162;
- syscall_nr_mremap			= 163;
- syscall_nr_setresuid			= 164;
- syscall_nr_getresuid			= 165;
- syscall_nr_vm86			= 166;
- syscall_nr_query_module		= 167;
- syscall_nr_poll			= 168;
+{ Unverified calls.
+ syscall_nr_setup                       =   0;
+ syscall_nr_creat                       =   8;
+ syscall_nr_time                        =  13;
+ syscall_nr_break                       =  17;
+ syscall_nr_oldstat                     =  18;
+ syscall_nr_mount                       =  21;
+ syscall_nr_umount                      =  22;
+ syscall_nr_setuid                      =  23;
+ syscall_nr_stime                       =  25;
+ syscall_nr_ptrace                      =  26;
+ syscall_nr_alarm                       =  27;
+ syscall_nr_oldfstat                    =  28;
+ syscall_nr_pause                       =  29;
+ syscall_nr_stty                        =  31;
+ syscall_nr_gtty                        =  32;
+ syscall_nr_nice                        =  34;
+ syscall_nr_ftime                       =  35;
+ syscall_nr_sync                        =  36;
+ syscall_nr_times                       =  43;
+ syscall_nr_prof                        =  44;
+ syscall_nr_brk                         =  45;
+ syscall_nr_setgid                      =  46;
+ syscall_nr_signal                      =  48;
+ syscall_nr_acct                        =  51;
+ syscall_nr_phys                        =  52;
+ syscall_nr_lock                        =  53;
+ syscall_nr_mpx                         =  56;
+ syscall_nr_setpgid                     =  57;
+ syscall_nr_ulimit                      =  58;
+ syscall_nr_oldolduname                 =  59;
+ syscall_nr_chroot                      =  61;
+ syscall_nr_ustat                       =  62;
+ syscall_nr_getpgrp                     =  65;
+ syscall_nr_setsid                      =  66;
+ syscall_nr_sgetmask                    =  68;
+ syscall_nr_ssetmask                    =  69;
+ syscall_nr_setreuid                    =  70;
+ syscall_nr_setregid                    =  71;
+ syscall_nr_sethostname                 =  74;
+ syscall_nr_setrlimit                   =  75;
+ syscall_nr_getrlimit                   =  76;
+ syscall_nr_getrusage                   =  77;
+ syscall_nr_settimeofday                =  79;
+ syscall_nr_getgroups                   =  80;
+ syscall_nr_setgroups                   =  81;
+ syscall_nr_oldlstat                    =  84;
+ syscall_nr_uselib                      =  86;
+ syscall_nr_swapon                      =  87;
+ syscall_nr_reboot                      =  88;
+ syscall_nr_readdir                     =  89;
+ syscall_nr_munmap                      =  91;
+ syscall_nr_truncate                    =  92;
+ syscall_nr_fchmod                      =  94;
+ syscall_nr_fchown                      =  95;
+ syscall_nr_profil                      =  98;
+ syscall_nr_ioperm                      = 101;
+ syscall_nr_socketcall                  = 102;
+ syscall_nr_syslog                      = 103;
+ syscall_nr_setitimer                   = 104;
+ syscall_nr_getitimer                   = 105;
+ syscall_nr_olduname                    = 109;
+ syscall_nr_iopl                        = 110;
+ syscall_nr_vhangup                     = 111;
+ syscall_nr_idle                        = 112;
+ syscall_nr_vm86old                     = 113;
+ syscall_nr_wait4                       = 114;
+ syscall_nr_swapoff                     = 115;
+ syscall_nr_sysinfo                     = 116;
+ syscall_nr_ipc                         = 117;
+ syscall_nr_sigreturn                   = 119;
+ syscall_nr_clone                       = 120;
+ syscall_nr_setdomainname               = 121;
+ syscall_nr_uname                       = 122;
+ syscall_nr_modify_ldt                  = 123;
+ syscall_nr_adjtimex                    = 124;
+ syscall_nr_mprotect                    = 125;
+ syscall_nr_create_module               = 127;
+ syscall_nr_init_module                 = 128;
+ syscall_nr_delete_module               = 129;
+ syscall_nr_get_kernel_syms             = 130;
+ syscall_nr_quotactl                    = 131;
+ syscall_nr_getpgid                     = 132;
+ syscall_nr_fchdir                      = 133;
+ syscall_nr_bdflush                     = 134;
+ syscall_nr_sysfs                       = 135;
+ syscall_nr_personality                 = 136;
+ syscall_nr_afs_syscall                 = 137;
+ syscall_nr_setfsuid                    = 138;
+ syscall_nr_setfsgid                    = 139;
+ syscall_nr__llseek                     = 140;
+ syscall_nr__newselect                  = 142;
+ syscall_nr_msync                       = 144;
+ syscall_nr_readv                       = 145;
+ syscall_nr_writev                      = 146;
+ syscall_nr_getsid                      = 147;
+ syscall_nr_fdatasync                   = 148;
+ syscall_nr__sysctl                     = 149;
+ syscall_nr_mlock                       = 150;
+ syscall_nr_munlock                     = 151;
+ syscall_nr_mlockall                    = 152;
+ syscall_nr_munlockall                  = 153;
+ syscall_nr_sched_setparam              = 154;
+ syscall_nr_sched_getparam              = 155;
+ syscall_nr_sched_setscheduler          = 156;
+ syscall_nr_sched_getscheduler          = 157;
+ syscall_nr_sched_yield                 = 158;
+ syscall_nr_sched_get_priority_max      = 159;
+ syscall_nr_sched_get_priority_min      = 160;
+ syscall_nr_sched_rr_get_interval       = 161;
+ syscall_nr_nanosleep                   = 162;
+ syscall_nr_mremap                      = 163;
+ syscall_nr_setresuid                   = 164;
+ syscall_nr_getresuid                   = 165;
+ syscall_nr_vm86                        = 166;
+ syscall_nr_query_module                = 167;
+ syscall_nr_poll                        = 168;
+}
 
+{More or less checked BSD syscalls}
+
+ syscall_nr_exit                        =   1;
+ syscall_nr_fork                        =   2;
+ syscall_nr_read                        =   3;
+ syscall_nr_write                       =   4;
+ syscall_nr_open                        =   5;
+ syscall_nr_close                       =   6;
+ syscall_nr_waitpid                     =   7;
+ syscall_nr_link                        =   9;
+ syscall_nr_unlink                      =  10;
+ syscall_nr_chdir                       =  12;
+ syscall_nr_mknod                       =  14;
+ syscall_nr_chmod                       =  15;
+ syscall_nr_chown                       =  16;
+ syscall_nr_getpid                      =  20;
+ syscall_nr_getuid                      =  24;
+ syscall_nr_geteuid                     =  25;
+ syscall_nr_access                      =  33;
+ syscall_nr_kill                        =  37;
+ syscall_nr_rename                      = 128;
+ syscall_nr_getppid                     =  39;
+ syscall_nr_dup                         =  41;
+ syscall_nr_pipe                        =  42;
+ syscall_nr_getegid                     =  43;
+ syscall_nr_getgid                      =  47;
+ syscall_nr_sigprocmask                 = 340;
+ syscall_nr_sigpending                  = 343;
+ syscall_nr_ioctl                       =  54;
+ syscall_nr_symlink                     =  57;
+ syscall_nr_readlink                    =  58;
+ syscall_nr_execve                      =  59;
+ syscall_nr_umask                       =  60;
+ syscall_nr_dup2                        =  90;
+ syscall_nr_fcntl                       =  92;
+ syscall_nr_select                      =  93;
+ syscall_nr_fsync                       =  95;
+ syscall_nr_setpriority                 =  96;
+ syscall_nr_getpriority                 = 100;
+ syscall_nr_sigsuspend                  = 341;
+ syscall_nr_sigaction                   = 342;
+ syscall_nr_gettimeofday                = 116;
+ syscall_nr_flock                       = 131;
+ syscall_nr_mkdir                       = 136;
+ syscall_nr_rmdir                       = 137;
+ syscall_nr_utimes                      = 138;
+ syscall_nr_statfs                      = 157;
+ syscall_nr_fstatfs                     = 158;
+ syscall_nr_stat                        = 188;
+ syscall_nr_fstat                       = 189;
+ syscall_nr_lstat                       = 190;
+ syscall_nr_mmap                        = 197;
+ syscall_nr_lseek                       = 199;
+ syscall_nr_ftruncate                   = 201;
+ syscall_nr_getdents                    = 272;
+
+
+{$IFNDEF BSD}
 {$IFDEF SYSCALL_DEBUG}
 const
   Sys_nr_txt : array[0..168] of string[15]=(
@@ -357,10 +364,13 @@ const
    'QueryModule',	{ 167 }
    'Poll');		{ 168 }
 {$ENDIF}
-
+{$ENDIF}
 {
   $Log$
-  Revision 1.2  2000-04-05 13:59:10  marco
+  Revision 1.3  2000-04-07 20:51:17  marco
+   * updates.
+
+  Revision 1.2  2000/04/05 13:59:10  marco
    * added constants for syscall.inc
 
   Revision 1.1  2000/04/05 13:06:24  marco

+ 5 - 2
rtl/bsd/systypes.inc

@@ -50,7 +50,7 @@ type
   TDirEnt = dirent;
 
   TDir = packed record
-    fd     : integer;
+    fd     : longint;
     loc    : longint;
     size   : integer;
     buf    : pdirent;
@@ -139,7 +139,10 @@ type
 
 {
   $Log$
-  Revision 1.5  2000-03-17 12:58:57  marco
+  Revision 1.6  2000-04-07 20:51:17  marco
+   * updates.
+
+  Revision 1.5  2000/03/17 12:58:57  marco
    * some changes to ftruncate based procs. Added a "0" as extra parameter
 
   Revision 1.4  2000/02/04 16:55:47  marco