USB booting :: dual boot dsl and puppy

have a 2gb usb key with puppy and dsl

/dev/sdb1 <--puppy 1gb
/dev/sdb2 <--dsl-initrd unarchived iso 508mb
/dev/sdb3 <--grub boot 8mb
/dev/sdb4 <--linux swap remaining space

here is the menu.lst for my grub config

# GRUB configuration file '/boot/grub/menu.lst'.
# generated by 'grubconfig'.  Wed Jan  7 16:04:43 2009
# Start GRUB global section
#timeout 30
color light-gray/blue black/light-gray
# End GRUB global section
# Linux bootable partition config begins
title Puppy on bootable USB
root (hd0,0)
kernel /vmlinuz pmedia=usbflash
initrd /initrd.gz
# Linux bootable partition config ends
# Other bootable partition config begins
 title DSL (on /dev/sdb2)
 root (hd0,1)
 # map (hd0) (hd1)
 # map (hd1) (hd0)
 # map (hd0,0) (hd1,1)
 # map (hd1,1) (hd0,0)
 # rootnoverify (hd1,1)
 # makeactive
 # chainloader +1
 kernel /boot/linux24
 initrd /boot/ramdisk_size=100000 init=/etc/init lang=us apm=power-off vga=791 initrd=minirt24.gz nomce noapic quiet BOOT_IMAGE=knoppix
title Install GRUB to floppy disk (on /dev/fd0)
pause Insert a formatted floppy disk and press enter.
root (hd1,2)
setup (fd0)
pause Press enter to continue.
title Install GRUB to Linux partition (on /dev/sdb3)
root (hd1,2)
setup (hd1,2)
pause Press enter to continue.
title -     For help press 'c', then type: 'help'
root (hd0)
title -     For usage examples, type: 'cat /boot/grub/usage.txt'
root (hd0)

how should i change it to make it work? cuz it just wont boot, puppy works dsl does not

original here.