I want to call a program that draws a graphic to the framebuffer during startup. I realized that I have to start that program in
linuxrc. But as soon as I change more than one line in linuxrc (inside miniroot.gz inside boot.img) the boot process breaks. Although if I just change something at the end of the script, its behavior changes already in the beginning (e.g. when it scans the different partitions for the Knoppix CD, it writes the pink lines *under* each other instead of *replacing* them /hda1 /hda2 ... etc)

How do I edit linuxrc correctly? Does it have to stay in the same size or why am I having this trouble?

I have tried it several times on different machines. Here is what I did:

loop-mount boot.img
unpack initrd.gz
loop-mount initrd.gz
edit linuxrc with kwrite
unmount initrd
pack initrd
replace initrd.gz

Where is the mistake?