#!/bin/sh

PATH=/sbin:$PATH
export PATH

IMAGE=ramdisk.img
FINALIMAGE=../../../images/ramdisk.img
DIR=ramdisk
SIZE=3520

MNTPOINT=/tmp/mkimage.mnt-$$

if [ "$1" != "-f" ]; then
    if [ -f $IMAGE ]; then
	echo "$IMAGE already exists." >&2
	exit 1
    fi
    if [ -f $FINALIMAGE ]; then
	echo "$FINALIMAGE already exists." >&2
	exit 1
    fi
fi

#dd if=/dev/zero of=$IMAGE bs=1k count=$SIZE 2> /dev/null

#for devnum in 0 1 2 3 4 5 6 7 8; do
    #if losetup /dev/loop$devnum $IMAGE 2>/dev/null ; then break; fi
#done

#if [ "$devnum" = "8" ]; then
    #rm -rf $MNTPOINT $IMAGE
    #echo "All of your loopback devices are in use!" >&2
    #exit 1
#fi

#LODEV=/dev/loop$devnum
LODEV=/dev/ram

#dd if=/dev/zero of=$LODEV bs=1k count=$SIZE
#mke2fs -i 27480 -m 0 $LODEV $SIZE >/dev/null 2>/dev/null

#(cd $DIR; find . | cpio -pv $MNTPOINT)

cp modules/* $DIR/modules
genromfs -d $DIR/ -f ramdisk.img.nogz
rm $DIR/modules/*

ls -l ramdisk.img.nogz

echo -n "gzipping image..."
gzip -9 < $IMAGE.nogz > $IMAGE
echo " done."

ls -l ramdisk.img

cp modules/modules.cgz $DIR/modules
genromfs -d $DIR/ -f ramdisk32.img.nogz -a 512 -A 2048,/..
rm $DIR/modules/*

ls -l ramdisk32.img.nogz

#mount -t ext2 $LODEV $MNTPOINT
#rm $MNTPOINT/modules/modules64.cgz
#umount $MNTPOINT
#dd if=$LODEV of=ramdisk32.img bs=1k count=$SIZE

echo -n "gzipping image..."
gzip -9 < ramdisk32.img.nogz > ramdisk32.img
echo " done."

ls -l ramdisk32.img

rm -rf $MNTPOINT 

size=`cat ramdisk.img | wc -c`
filler=`expr 1474560 - $size`

cat ramdisk.img > $FINALIMAGE
dd if=/dev/zero bs=$filler count=1 >> $FINALIMAGE

echo "$filler free on ramdisk floppy"
