--- dsl_std/linuxrc	2005-01-29 08:06:36.000000000 +1300
+++ dsl_t20/linuxrc	2007-05-08 22:17:40.000000000 +1200
@@ -7,6 +7,9 @@
 # This script needs some of the builtin ash commands (if, test, ...)
 # mount/umount, insmod/rmmod are also a builtin in ash-knoppix.
 #
+ 
+# DEvoSL: patch for loading knoppix image from initrd is at:
+#  http://damnsmalllinux.org/cgi-bin/forums/ikonboard.cgi?act=ST;f=26;t=15960;st=0
 
 # hardcoded configurable options
 # Default maximum size of dynamic ramdisk in kilobytes
@@ -26,10 +29,13 @@
 # Removed 53c7,8xx -> crashes if no device attached.
 # Removed AM53C974 -> crashes tmscsim if adapter found
 # Added initio.o on request (untested)
+
+# DEvoSL: removed aha1542.o because it freezes for over a minute on T20.
+
 SCSI_MODULES="aic7xxx.o aic7xxx_old.o BusLogic.o \
 ncr53c8xx.o NCR53c406a.o \
 initio.o mptscsih.o \
-advansys.o aha1740.o aha1542.o aha152x.o \
+advansys.o aha1740.o aha152x.o \
 atp870u.o dtc.o eata.o fdomain.o gdth.o \
 megaraid.o pas16.o pci2220i.o pci2000.o psi240i.o \
 qlogicfas.o qlogicfc.o qlogicisp.o \
@@ -333,6 +339,10 @@
 test -n "$FOUND_SCSI" -a -z "$NOSCSI" && DEVICES="$DEVICES /dev/sd?[1-9] /dev/sd?[1-9][0-9]"
 DEVICES="$DEVICES /dev/hd?[1-9] /dev/hd?[1-9][0-9]"
 case "$CMDLINE" in *fromhd=/dev/*) DEVICES="$fromhd"; ;; esac
+
+# DEvoSL: Unset all devices if booted from initrd
+case "$CMDLINE" in *frominitrd*) DEVICES=""; ;; esac
+
 for i in $DEVICES
 do
 echo -n "${CRE}${BLUE}Looking for DSL image in: ${MAGENTA}$i${NORMAL}   "
@@ -349,6 +359,16 @@
 done
 fi
 
+# DEvoSL: Look for KNOPPIX directory without mounting anything
+case "$CMDLINE" in *frominitrd*)
+if test -f /cdrom/$KNOPPIX_DIR/$KNOPPIX_NAME
+then
+echo -n "${CRE} ${GREEN}Accessing DSL image at ${MAGENTA}/cdrom/${KNOPPIX_DIR}/${KNOPPIX_NAME}${GREEN} on initrd...${NORMAL}" ;
+FOUND_KNOPPIX="initrd" ;
+fi
+;;
+esac
+
 #
 # Harddisk-installed script part version has been removed
 # (KNOPPIX can be booted directly from HD now).
