That worked a treat, thanks! The steps I took were:
scp piCore-9.0.1.zip pi:/mnt/mmcblk0p2/ to get the updated image onto the Pi (I could have wget it from the Pi, but I'd already downloaded it onto my computer)
ssh pi
cd /mnt/mmcblk0p2
sudo unzip piCore-9.0.1.zip
sudo mkdir /mnt/update1
sudo mkdir /mnt/update2
fdisk -ul piCore-9.0.1.img
Disk piCore-9.0.1.img: 49 MB, 51380224 bytes, 100352 sectors
49 cylinders, 64 heads, 32 sectors/track
Units: sectors of 1 * 512 = 512 bytes
Device Boot StartCHS EndCHS StartLBA EndLBA Sectors Size Id Type
piCore-9.0.1.img1 4,0,1 37,63,32 8192 77823 69632 34.0M c Win95 FAT32 (LBA)
piCore-9.0.1.img2 38,0,1 48,63,32 77824 100351 22528 11.0M 83 Linux
sudo mount -v -o offset=$(expr 512 \* 8192) -t vfat piCore-9.0.1.img /mnt/update1
sudo mount -v -o offset=$(expr 512 \* 77824) -t ext4 piCore-9.0.1.img /mnt/update2
cp -af /mnt/update1/* /mnt/mmcblk0p1/
cp -af /mnt/update2/tce/optional/* /mnt/mmcblk0p2/tce/optional/
sudo exitcheck.sh reboot
...and then reapplied the changes I'd made to config.txt and cmdline.txt, that I forgot I'd done, and overwrote with the default versions above (oops).
Rob.