Yep.
The 3900 family should run MIPS I code compiled for the R3000.
The 3912 has no FPU, but if you're running on any contemporary
MIPS/Linux kernel and library system, you neither need nor want
soft-float. The kernel does FP instruction emulation. Running soft-float
would make for faster, if larger, code, but requires that the whole
system, particularly glibc, be built for soft-float, which is rarely done
(and the last time I tried it, didin't quite work with the standard
glibc sources out-of-the-box).
Correct. I use the FP emulator in Linux for my TX3917/PR31700 stuff. I have had no problems. Current glibc has assembly code that assumes hardware floating point which is why building for soft-float does not work out of the box. There are probably some patches out there to rectify that. My personal choice, use uClibc (http://uclibc.org/) for your C runtime. I wrote the dynamic linker loader for MIPS and would highly recommend you try it out. I would really like to see more testing of it.
Also, I have some documents for the 3912 on my FTP site:
ftp://ftp.realitydiluted.com/docs/Toshiba ftp://ftp.realitydiluted.com/docs/Philips
It should be noted that the Toshiba TX3912 and the Philips PR31700 are identical cores. There was definitely some cross-licensing going on there. Perhaps Kevin or Dominic would know this in more detail, but it is not really that important.
-Steve