Another update. This is kind of long, so feel free to skip around if a particular section is boring you.
I got a Logitech F310 controller for the Vaio. Previously I was using this shitty Steelseries controller, but I wanted something better that also was a better match for the look of the Vaio. I think the F310 and the Vaio look good together, though they're not the same color. Coincidentally, the F310 is almost exactly the same color as my CRT computer monitor that I use for this system. I've been using the controller quite a bit, and I really like it. It's a pretty high quality controller, and that's what was really important to me.
Here's a picture of the controller connected to the Vaio:
The cable is longer than it looks in this photo, part of it is to the left side of the frame. One of my goals that I originally started with my other system and that continues with this system is for it to be game console-like in the way I use it. I play most games with the controller, except for games that are meant to be played with a mouse, like point-and-click adventure games. I have a small wireless keyboard/trackpad remote, and I can use this to do any of the standard OS stuff - which mainly is limited to installing games and drivers, and loading games. That's pretty much it, and the remote works fine for that. So, this means that, to use this system, all I need is that small remote (which can also function as a controller) and my controller - and no desk is necessary. Now that I have the Vaio, since it has USB ports on the front, that means I can store away the F310 when I'm not using it, and plug it into the front of the system just like I would with a console. I also think it's cool to be able to use such a relatively new controller with such old hardware and games. I'm not really interested in playing first-person shooters on this system, apart from maybe every once in a while (which I can do, since I can also use a standard keyboard and mouse with a lap tray) - but for the most part I'd rather not, because I'd rather play them on my modern PC. The modern PC can play most of those games (the ones I actually care about) in higher resolution, in widescreen, with a full keyboard and mouse, and with better performance.
The following part might seem boring unless you're really interested in the PCX2 or you have one already and are experiencing the same things. So, if those don't apply to you, you may want to skip that section.
Long, boring PowerVR rant:
I think I understand what's going on with the m3D. The way it seems to me is the the PCX2 is just really picky about how you run games. Most PowerSGL games run fine and don't cause any problems, however Tomb Raider in particular and I think also the PowerVR tech demos can sometimes cause issues. I was looking at the patch files for Tomb Raider that are included on the m3D disc, and I realized that this version of the patch (1.6) is supposed to run in pure DOS - it actually forces you to reboot into DOS. The later patches allowed you to run it in Windows, but the Readme for those patches mention that the system can become unstable if you try to switch to other programs while the game is running - which is similar to what I've experienced, except that for me it seems to become unstable even when the game isn't running. So, my conclusion from this is that certain PowerSGL games/programs are just designed in a shitty way which can cause glitches/errors if they're used in a certain way, and the card and drivers are designed in a way that doesn't prevent this from happening. It's possible that it might behave differently with a different CPU, but I now think that doesn't matter because I seem to have found a solution.
The system seems to behave unpredictably when I run Tomb Raider, but I've found a solution which seems to work in any situation. The solution is this: if I want to play Tomb Raider for PowerVR, it has to be the only game or program I run in a given boot session - things like the 3dfx toolbar and JoyToKey are fine, but I shouldn't run anything else if I want to play that game. I think PowerSGL games are usually the only ones that have problems, however I've found it's best just not to run anything else, since it eliminates any other factors that could cause an error.
So, if I want to play Tomb Raider and the system is off, then I can boot the system and immediately run the game. If the system is on and I've been running other games or programs, then I need to restart the system, then I can run Tomb Raider. Once I'm done playing it, I then have to immediately shut down or restart the system. I still need to do some more testing, but this method seems to work pretty reliably - and it's better than playing it in DOS since I'm able to get the controller working this way, whereas I don't think it's possible to use the controller in DOS. It's a little annoying, but not too bad, and Tomb Raider isn't really that important to me anyway - I was mainly interested in it just as a technical challenge, and because the PowerVR version is supposedly superior to the other versions. I don't care about the PowerVR tech demos at all, so I'm just not going to avoid those entirely.
All of the other PowerSGL games I've tried seem to work just fine, so that's pretty much all I care about. I'm pretty sure now that the m3D itself isn't faulty: it's either just an inherent, unavoidable flaw of the hardware, or poor design of the games or drivers, or all of the above. Either way, it isn't something to be concerned about.
Anyway, I still really like the m3D and the games I can play with it - so I still think it's worth it to have it. Another nice thing about the m3D is that certain games that use Glide or DirectX that won't run on the Voodoo 3 (because they were designed for older Voodoo cards) will run on the m3D. And the Voodoo 3 can run most other games, so the two complete each other. 😵 A couple of games I've found that won't work on the Voodoo 3, but will work on the m3D are Unreal and Mechwarrior 2. Those games both have Glide support, but it doesn't work with the Voodoo 3.
A side note about Tomb Raider: another solution would be to just run the game in DOS, which I think would eliminate the problem entirely, but this isn't possible to do with my system because the DOS drivers for the SB Live! require emm386.exe to be running - and if you do that, then Tomb Raider gives you an error which says that emm386.exe can't be running while the game is running. So, this just isn't possible with my system, unless I want to install a second sound card - which is way more work than I'm willing to do for this one game. A side-benefit of this experimentation, though, is that I now know how to run CD-based DOS games in pure DOS with SB Live! drivers.
/Long, boring PowerVR rant
About the system itself:
Everything seems to be working pretty well overall. I've noticed that the DVD drive can be a little noisy with certain discs, but this isn't anything other than a slight annoyance at most - and most discs aren't that noisy. Glide/OpenGL/DirectX games seem to work fine with the Voodoo 3, and PowerSGL games generally (apart from what I described above) run fine on the m3D as well. DOS and Windows games work. The SB Live! and SB16 emulation work as intended. I also got the ethernet working, though I haven't used it for anything yet. This system is pretty awesome. It's basically the same as my previous system, apart from having a slightly higher CPU clock speed and extra hardware that I'm not using currently. The real benefit of this system is that it's in much better condition physically and cosmetically, and it looks much nicer. I've been continually expanding my setup and trying to make it the best system possible for playing older games, and I think it can't get any better than this.
Here are the system's current specs, which I'll also add to the OP:
Pentium 4 3.06GHz
P4S533-VL MB
512MB DDR-333
Voodoo 3 3000
Matrox m3D
Sound Blaster Live!
WD 160GB HDD
Sony DVD-RW drive
Matsushita DVD drive
Floppy drive
Windows 98 SE
It also has video/TV recording functions and a memory stick slot which are currently disabled. The built-in Yamaha AC-XG is also disabled.