The wiki is a great place to learn and source of reference..
Meanwhile, try creating your extension in /tmp
For this example we'll call the firmware b43cut.img, and
the extension firmware-b43cut.tcz
start by creating your directory structure, at the command line
mkdir -p /tmp/pkg/usr/local/lib/firmware/b43cut
mkdir -p /tmp/pkg/usr/local/tce.installed
create a file (in this case a udevadm trigger)
touch /tmp/pkg/usr/local/tce.installed/firmware-b43cut
open file "/tmp/pkg/usr/local/tce.installed/firmware-b43cut" and enter on the first two lines
the following, then save it
#!/bin/sh
udevadm trigger
copy (your firmware file) to /tmp/pkg/usr/local/lib/firmware/b43cut/
set permissions (note the own/perm. of tce.installed)
sudo chmod 644 /tmp/pkg/usr/local/lib/firmware/b43cut/b43cut.img
sudo chown -R root:root /tmp/pkg/usr
sudo chown -R root:staff /tmp/pkg/usr/local/tce.installed
sudo chmod -R 775 /tmp/pkg/usr/local/tce.installed
Now you're ready to squash it
cd /tmp
tce-load -i squashfs-tools-4.x.tcz && mksquashfs pkg/ firmware-b43cut.tcz
then copy the new extension to tce/optional dir, load it
tc@box:/$ tce-load -i firmware-b43cut.tcz
firmware-b43cut.tcz: OK
and test it
see also
http://wiki.tinycorelinux.net/wiki:creating_extensions