Assuming you're using the Slackware CD, you'd just boot the PC with it, typing "scsi.s" at the boot prompt (or whatever kernel has the correct drivers for your controller). Then just login as root. Once you're logged in, then mount your / partition, assuming you did not separate it from /boot and installed everything to 1 partition. If you didn't then go ahead and mount them all. Once you have it mounted, then you'd just replace the kernel files in /boot with the ones from the CD. Then chroot into it, run lilo, exit, unmount the drive and reboot.
In short, run the following commands once you are logged into the CD:
Code:
mkdir /mnt/sda1
mkdir /mnt/cdrom
mount /dev/sda1 /mnt/sda1
mount /dev/hdc /mnt/cdrom
cd /mnt/sda1/boot
mv vmlinuz vmlinuz-org
mv System.map System.map-org
mv config config-org
cp /mnt/cdrom/kernels/scsi.s/bzImage vmlinuz
cp /mnt/cdrom/kernels/scsi.s/config .
zcat -d /mnt/cdrom/kernels/scsi.s/System.map.gz > System.map
cd /
chroot /mnt/sda1
lilo
exit
umount /mnt/sda1
umount /mnt/cdrom
reboot
The above assumes /dev/sda1 is your root parition, if it's not then change it. I don't think I missed anything. Also best I recall Slackware installs links for the System.map, config and vmlinuz files but I don't have a default install to reference to be sure. Anyway, the above should work fine, assuming /etc/lilo.conf is right and the kernel is named vmlinuz in it. You may want to take a peak at the lilo.conf file after running the "chroot" command but prior to running the "lilo" command to make sure everything is ok with it. I always name my kernels like so:
vmlinuz-2.4.29
config-2.4.29
System.map-2.4.29
and remove the links to avoid confusion. But if you do that make sure you change it in the lilo.conf.
BTW, while your in /mnt/sda1/boot, run "ls" and see what the current kernel is named. I bet it's the ide kernel, if so, then that's your problem. If not, you may want to try passing "vmlinuz vga=normal" at the boot prompt before replacing your kernel.
Oops, I had to change the above a bit, I didn't have you mount the CD. You didn't say what controller your CDROM is connected to, so I assumed it's connected to the Secondary IDE controller as the master. If that's not the case then substitute /dev/hdc with one of the following:
/dev/hda = Primary Master (IDE 0)
/dev/hdb = Primary Slave (IDE 0)
/dev/hdc = Secondary Master (IDE 1)
/dev/hdd = Secondary Slave (IDE 1)