diff -ru ../../work/x48-0.4.0/src/Imakefile ./src/Imakefile
--- ../../work/x48-0.4.0/src/Imakefile	Thu Jan 12 05:17:01 1995
+++ ./src/Imakefile	Thu Oct 24 13:52:53 1996
@@ -86,9 +86,9 @@
              CO = co -l
        TARFILES = Imakefile X48.ad $(TARS1) $(SRCS2) $(SRCS3) $(SRCS4) $(HDRS)
 
-all:: $(BIN)/x48 $(BIN)/dump2rom $(BIN)/checkrom $(BIN)/mkcard
+all:: x48 dump2rom checkrom mkcard
 
-       PROGRAMS = $(BIN)/x48 $(BIN)/dump2rom $(BIN)/checkrom $(BIN)/mkcard
+       PROGRAMS = x48 dump2rom checkrom mkcard
 
 depend:: version.c X48.ad.h
 
@@ -101,16 +101,15 @@
 	RemoveTargetProgram($@)                                         @@\
 	$(CC) -o $@ $(LDOPTIONS) $(OBJS4) locallib $(LDLIBS) syslib $(EXTRA_LOAD_FLAGS) @@\
                                                                         @@\
-SaberProgramTarget(program,$(SRCS4),$(OBJS4),locallib,syslib)           @@\
                                                                         @@\
 InstallProgram(program,$(BINDIR))                                       @@\
 InstallManPage(program,$(MANDIR))
 #endif /* ComplexProgramTarget_4 */
 
-ComplexProgramTarget_1($(BIN)/x48, $(X48LIBS),)
-ComplexProgramTarget_2($(BIN)/dump2rom,,)
-ComplexProgramTarget_3($(BIN)/checkrom,,)
-ComplexProgramTarget_4($(BIN)/mkcard,,)
+ComplexProgramTarget_1(x48, $(X48LIBS),)
+ComplexProgramTarget_2(dump2rom,,)
+ComplexProgramTarget_3(checkrom,,)
+ComplexProgramTarget_4(mkcard,,)
 
 InstallAppDefaults(X48)
 
diff -ru ../../work/x48-0.4.0/src/serial.c ./src/serial.c
--- ../../work/x48-0.4.0/src/serial.c	Wed Jan 11 12:24:04 1995
+++ ./src/serial.c	Wed Oct 23 10:59:25 1996
@@ -77,6 +77,8 @@
 #ifdef SOLARIS
 #include <sys/stream.h>
 #include <sys/stropts.h>
+#endif
+#if defined(SOLARIS) || defined(__FreeBSD__) || defined (__bsdi__)
 #include <sys/termios.h>
 #endif
 
@@ -238,7 +240,7 @@
 
   if (ttyp >= 0)
     {
-#if defined(SUNOS) || defined(HPUX)
+#if defined(SUNOS) || defined(HPUX) || defined(__FreeBSD__) || defined (__bsdi__)
       if (tcgetattr(ttyp, &ttybuf) < 0)
 #else
       if (ioctl(ttyp, TCGETS, (char *)&ttybuf) < 0)
@@ -263,7 +265,7 @@
 
   if (ttyp >= 0)
     {
-#if defined(SUNOS) || defined (HPUX)
+#if defined(SUNOS) || defined (HPUX) || defined(__FreeBSD__) || defined (__bsdi__)
       if (tcsetattr(ttyp, TCSANOW, &ttybuf) < 0)
 #else
       if (ioctl(ttyp, TCSETS, (char *)&ttybuf) < 0)
@@ -291,7 +293,7 @@
 
   if (ir_fd >= 0)
     {
-#if defined(SUNOS) || defined (HPUX)
+#if defined(SUNOS) || defined (HPUX) || defined (__FreeBSD__) || defined (__bsdi__)
       if (tcgetattr(ir_fd, &ttybuf) < 0)
 #else
       if (ioctl(ir_fd, TCGETS, (char *)&ttybuf) < 0)
@@ -315,7 +317,7 @@
 
   if (ir_fd >= 0)
     {
-#if defined(SUNOS) || defined(HPUX)
+#if defined(SUNOS) || defined(HPUX) || defined (__FreeBSD__) || defined (__bsdi__)
       if (tcsetattr(ir_fd, TCSANOW, &ttybuf) < 0)
 #else
       if (ioctl(ir_fd, TCSETS, (char *)&ttybuf) < 0)
@@ -344,7 +346,7 @@
 
   if (ir_fd >= 0)
     {
-#if defined(SUNOS) || defined (HPUX)
+#if defined(SUNOS) || defined (HPUX) || defined (__FreeBSD__) || defined (__bsdi__)
       if (tcgetattr(ir_fd, &ttybuf) < 0)
 #else
       if (ioctl(ir_fd, TCGETS, (char *)&ttybuf) < 0)
@@ -358,6 +360,10 @@
         }
     }
 
+#if defined(__FreeBSD__) || defined(__bsdi__)
+  cfsetspeed(&ttybuf, baud);
+#else
+
   ttybuf.c_cflag &= ~CBAUD;
 
   baud &= 0x7;
@@ -404,9 +410,11 @@
       ttybuf.c_cflag |= B9600;
     }
 
+#endif /* FreeBSD */
+
   if (ir_fd >= 0)
     {
-#if defined(SUNOS) || defined(HPUX)
+#if defined(SUNOS) || defined(HPUX) || defined (__FreeBSD__) || defined(__bsdi__)
       if (tcsetattr(ir_fd, TCSANOW, &ttybuf) < 0)
 #else
       if (ioctl(ir_fd, TCSETS, (char *)&ttybuf) < 0)
@@ -422,7 +430,7 @@
 
   if (ttyp >= 0)
     {
-#if defined(SUNOS) || defined(HPUX)
+#if defined(SUNOS) || defined(HPUX) || defined (__FreeBSD__) || defined(__bsdi__)
       if (tcgetattr(ttyp, &ttybuf) < 0)
 #else
       if (ioctl(ttyp, TCGETS, (char *)&ttybuf) < 0)
@@ -437,6 +445,9 @@
         }
     }
 
+#if defined(__FreeBSD__) || defined(__bsdi__)
+  cfsetspeed(&ttybuf, baud);
+#else
   ttybuf.c_cflag &= ~CBAUD;
 
   baud &= 0x7;
@@ -482,10 +493,11 @@
         fprintf(stderr, "%s: can\'t set baud rate, using 9600\n", progname);
       ttybuf.c_cflag |= B9600;
     }
+#endif
 
   if (ttyp >= 0)
     {
-#if defined(SUNOS) || defined(HPUX)
+#if defined(SUNOS) || defined(HPUX) || defined (__FreeBSD__) || defined(__bsdi__)
       if (tcsetattr(ttyp, TCSANOW, &ttybuf) < 0)
 #else
       if (ioctl(ttyp, TCSETS, (char *)&ttybuf) < 0)
