Well, for the permedia I could recommend the permedia2 hardware and programmer manuals. I had to sign an NDA to get mine, but I wouldn't be surprised if they are simply on the web somewhere these days

Thanks for clearing that up Karlos. That explains why Vertex lighting was disabled by default: many people are now using Voodoo boards that probably do support hardware multitexturing. I do wonder how the game looks on such a system, compared to mine.
In a word, better. It isn't just that they support multitexturing they also have more blending modes. When you use the non-vertex model on the permedia essentially you are doing this
pass1: framebufferColour = fragmentColour (fragment is texture RGB)
pass2: framebufferColour = fragmentAlpha*fragmentColour + (1-fragmentAlpha)*framebufferColour (fragment is shadowmap ARGB)
For the shadow, the fragmentColour is black, so the first term in pass 2 is 0, not that it really makes any difference to the underlying hardware in this case.
For the voodoo, you can do multiplicative blending. So, instead of simply having a black texture with an alpha channel to dictate how much to "paint" onto the texture, so even without multitexture support you can do something like this:
pass1: framebufferColour = fragmentColour1 (fragment is lightMap RGB)
pass2: framebufferColour = frameBufferColour * fragmentColour2 (fragment is texture RGB)
This allows you to reproduce the same shadowing techniques as the first method (in which case the lightmap RGB is zero) but also to simulate lighting of any colour. If the lightmap was entirely blue, for example, the second pass would result only in the blue component of fragmentColour2 being written into the framebuffer.
Multitexturing doesn't do anything to this other than to allow you to do it all in one pass; a performance optimisation rather than a new way of achieving the result.