diff -ur wine971130-jp.orig/configure wine971130-jp/configure
--- wine971130-jp.orig/configure	Sun Jan 11 08:21:04 1998
+++ wine971130-jp/configure	Sun Jan 11 07:39:27 1998
@@ -2479,6 +2479,8 @@
 
 trap 'rm -f $CONFIG_STATUS conftest*; exit 1' 1 2 15
 
+LDLIBS="$LDLIBS -lxpg4"
+
 DEFS=-DHAVE_CONFIG_H
 
 # Without the "./", some shells look in PATH for config.status.
diff -ur wine971130-jp.orig/debugger/memory.c wine971130-jp/debugger/memory.c
--- wine971130-jp.orig/debugger/memory.c	Mon Feb  3 03:57:44 1997
+++ wine971130-jp/debugger/memory.c	Sun Jan 11 07:38:04 1998
@@ -19,7 +19,7 @@
  *     write (rwflag == 0)
  ************************************************************/
 
-#ifdef linux
+#if defined(linux) || defined(__FreeBSD__)
 BOOL32 DEBUG_checkmap_bad( const char *addr, size_t size, int rwflag)
 {
   FILE *fp;
@@ -28,6 +28,7 @@
   char *start, *end;
   int ret = TRUE;
 
+#ifdef linux
   /* 
      The entries in /proc/self/maps are of the form:
      08000000-08002000 r-xp 00000000 03:41 2361
@@ -41,12 +42,34 @@
 
      Only permissions start and end are used here
      */
+#else
+/*
+    % cat /proc/curproc/map
+    start      end         resident   private perm    type
+    0x1000     0xe000            12         0 r-x COW vnode
+    0xe000     0x10000            2         2 rwx COW vnode
+    0x10000    0x27000            4         4 rwx     default
+    0x800e000  0x800f000          1         1 rw-     default
+    0xefbde000 0xefbfe000         1         1 rwx     default
+    
+    COW = "copy on write"
+*/
+#endif
+
   
+#ifdef linux
   if (!(fp = fopen("/proc/self/maps", "r")))
+#else
+  if (!(fp = fopen("/proc/curproc/map", "r")))
+#endif
     return FALSE; 
 
   while (fgets( buf, 79, fp)) {
+#ifdef linux
     sscanf(buf, "%x-%x %3s", (int *) &start, (int *) &end, prot);
+#else
+    sscanf(buf, "%x %x %*d %*d %3s", (int *) &start, (int *) &end, prot);
+#endif
     if ( end < addr)
       continue;
     if (start <= addr && addr+size < end) {
diff -ur wine971130-jp.orig/memory/selector.c wine971130-jp/memory/selector.c
--- wine971130-jp.orig/memory/selector.c	Sun Jan 11 08:18:57 1998
+++ wine971130-jp/memory/selector.c	Sun Jan 11 07:30:51 1998
@@ -14,7 +14,16 @@
 #include "debug.h"
 
 
+#ifdef __FreeBSD__
+#include <osreldate.h>
+#if __FreeBSD_version < 220000
 #define FIRST_LDT_ENTRY_TO_ALLOC  17
+#else
+#define FIRST_LDT_ENTRY_TO_ALLOC  17
+#endif
+#else
+#define FIRST_LDT_ENTRY_TO_ALLOC  6
+#endif
 
 
 /***********************************************************************
diff -ur wine971130-jp.orig/memory/virtual.c wine971130-jp/memory/virtual.c
--- wine971130-jp.orig/memory/virtual.c	Sun Jan 11 08:20:07 1998
+++ wine971130-jp/memory/virtual.c	Sun Jan 11 09:10:28 1998
@@ -1097,6 +1097,9 @@
         return FALSE;
     }
     if (!cbFlush) cbFlush = view->size;
+#ifndef MS_SYNC
+#define MS_SYNC 0
+#endif MS_SYNC
     if (!msync( addr, cbFlush, MS_SYNC )) return TRUE;
     SetLastError( ERROR_INVALID_PARAMETER );
     return FALSE;
diff -ur wine971130-jp.orig/multimedia/midi.c wine971130-jp/multimedia/midi.c
--- wine971130-jp.orig/multimedia/midi.c	Sun Jan 11 08:17:54 1998
+++ wine971130-jp/multimedia/midi.c	Sun Jan 11 07:29:49 1998
@@ -11,6 +11,10 @@
 #include <string.h>
 #include <unistd.h>
 #include <fcntl.h>
+#ifdef __FreeBSD__
+#include <string.h>
+#include <sys/errno.h>
+#endif
 #include <sys/ioctl.h>
 #include "windows.h"
 #include "ldt.h"
diff -ur wine971130-jp.orig/windows/dialog.c wine971130-jp/windows/dialog.c
--- wine971130-jp.orig/windows/dialog.c	Sun Jan 11 08:21:30 1998
+++ wine971130-jp/windows/dialog.c	Sun Jan 11 07:28:52 1998
@@ -10,6 +10,9 @@
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
+#ifdef __FreeBSD__
+#include <sys/errno.h>
+#endif
 #include <errno.h>
 #include "windows.h"
 #include "dialog.h"
diff -ur wine971130-jp.orig/wine.ini wine971130-jp/wine.ini
--- wine971130-jp.orig/wine.ini	Mon Aug 25 00:49:15 1997
+++ wine971130-jp/wine.ini	Sun Jan 11 07:27:07 1998
@@ -42,7 +42,7 @@
 System=c:\windows\system
 Temp=e:\
 Path=c:\windows;c:\windows\system;e:\;e:\test;f:\
-SymbolTableFile=./wine.sym
+SymbolTableFile=/usr/local/etc/wine.sym
 
 [options]
 AllocSystemColors=100
@@ -53,13 +53,13 @@
 Default = -adobe-times-
 
 [serialports]
-Com1=/dev/cua0
-Com2=/dev/cua1
+Com1=/dev/ttyd0
+Com2=/dev/ttyd1
 Com3=/dev/modem,38400
 Com4=/dev/modem
 
 [parallelports]
-Lpt1=/dev/lp0
+Lpt1=/dev/lpt0
 
 [spooler]
 LPT1:=|lpr
