i have been googling for a long time and i barely see this referenced anywhere, had to figure it out by trial&error in the end.
it's also not clear where the docs should be, in my case i suppose this is an ipxe feature, so the syntax is slightly different, but i'm not even sure about that
in any way here's what i figured out. with modern tc you can boot with pxe even when using the separate modules and rootfs for initrd.
this worked for me from the ipxe console:
kernel http://tinycorelinux.net/13.x/x86_64/release/distribution_files/vmlinuz64 loglevel=3 initrd=modules64.gz initrd=rootfs64.gz
module http://tinycorelinux.net/13.x/x86_64/release/distribution_files/modules64.gz
initrd http://tinycorelinux.net/13.x/x86_64/release/distribution_files/rootfs64.gz
boot
somehow this thread is the only thing that mentions tinycorelinux and that "initrd=" option.
it's needed, somehow without this, the kernel doesn't know where root comes from. (errors like "VFS: Cannot open root device "(null)" or unknown-block"...).
initrd=file1,file2 doesn't work in this case, instead you just have to supply initrd= twice.
if anybody knows how this can be documented in a central place, that would be very nice for new users now that i found out how
i was expecting to find information about how modules64.gz and rootfs64.gz goes together (and are the same as corepure64.gz alone) on the main site, as that's important enough.
horrible modern EFI based system, and this problem kept me from enjoying TC for a while now. maybe this means i can afford some more time with tc again.