--- Makefile.orig	Sun Oct 17 14:50:40 1999
+++ Makefile	Sun Oct 17 14:51:36 1999
@@ -38,6 +38,10 @@
   sed 's/-D/-DLCF_/g'` `[ -r /usr/include/asm/boot.h ] && echo -DHAS_BOOT_H`
 GO=-DGO=0x`sed '/go/s/^.*go  0 \(....\) A.*$$/\1/p;d' first.lis`
 
+#patched lilo
+CONFIG+= -DLCF_LARGE_EBDA
+PCONFIG+= -DLCF_LARGE_EBDA
+
 SHELL=/bin/sh
 CC=cc
 CPP=$(CC) -E
--- common.h.orig	Sun Oct 17 14:52:08 1999
+++ common.h	Sun Oct 17 14:28:33 1999
@@ -7,6 +7,7 @@
 #define COMMON_H
 
 #include <sys/stat.h>
+#include <linux/types.h>
 #include <linux/genhd.h>
 
 #include "lilo.h"
--- geometry.c.orig	Wed Oct 14 22:24:20 1998
+++ geometry.c	Fri Mar  3 22:05:40 2000
@@ -120,7 +120,8 @@
       MAJOR(dev) == MAJOR_IDE3 || MAJOR(dev) == MAJOR_IDE4 ||
       MAJOR(dev) == MAJOR_IDE5 || MAJOR(dev) == MAJOR_IDE6 ||
       MAJOR(dev) == MAJOR_XT || MAJOR(dev) == MAJOR_SD ||
-      MAJOR(dev) == MAJOR_ESDI || MAJOR(dev) == MAJOR_DAC960;
+      MAJOR(dev) == MAJOR_ESDI || MAJOR(dev) == MAJOR_DAC960 || 
+      MAJOR(dev) == MAJOR_FL || MAJOR(dev) == MAJOR_NFTL;
 }
 
 
@@ -305,8 +306,14 @@
 	    /* fall through */
 	case MAJOR_ESDI:
 	    /* fall through */
+	case MAJOR_FL:
+        case MAJOR_NFTL:
+	    /* fall through */
 	case MAJOR_XT:
-	    geo->device = 0x80+(MINOR(device) >> 6)+(MAJOR(device) == MAJOR_HD ?
+	    geo->device = 0x80+(MINOR(device) >> 6)+(
+	      (MAJOR(device) == MAJOR_HD || 
+	       MAJOR(device) == MAJOR_FL ||
+	       MAJOR(device) == MAJOR_NFTL) ?
 	      0 : last_dev(MAJOR_HD,64));
 	    if (ioctl(fd,HDIO_GETGEO,&hdprm) < 0)
 		die("geo_query_dev HDIO_GETGEO (dev 0x%04x): %s",device,
@@ -377,6 +384,9 @@
 	case MAJOR_IDE6:
 	    /* fall through */
 	case MAJOR_ESDI:
+	    /* fall through */
+	case MAJOR_FL:
+        case MAJOR_NFTL:
 	    /* fall through */
 	case MAJOR_XT:
 	    return MINOR(device) >> 6 ? 0 : !last_dev(MAJOR_HD,64);
--- lilo.h.orig	Sun Oct 17 14:47:05 1999
+++ lilo.h	Fri Mar  3 22:03:21 2000
@@ -38,6 +38,8 @@
 #define MAJOR_DAC960	48 /* First Mylex DAC960 PCI RAID controller */
 #define MAJOR_IDE5	55 /* IDE on fifth interface */
 #define MAJOR_IDE6	57 /* IDE on sixth interface */
+#define MAJOR_FL        62 /* M-Systems Disk On Chip 2000 */
+#define MAJOR_NFTL      93 /* M-Systems DOC2000 NFTL driver */
 
 #define MAX_IMAGES      ((SECTOR_SIZE*2-2)/sizeof(IMAGE_DESCR))
 			  /* maximum number of images */
