Monday, February 9, 2009

multiseat 3D. denied (for now)

So I've been trying to figure out a way to let my daughter play the "duck game" (or at least watch the penguin drift aimlessly down the hill) while I do whatever else I am doing that is so damn important. Naturally, the first thing a normal person thinks to do is hook up another monitor, keyboard, and mouse to their existing computer. Right? Everyone does this? No.

This is basically the dream. However, to get there from here you need TWO video cards. I have an PCI-Express Nvidia card. So I needed another PCI video card that can do 3D. In case you don't know, PCI is kind-of getting obsolete for video cards these days so it isn't easy to find one. My brother kindly gave me an ATI Radeon PCI something or other. Great! Plug it all in and I'm ready to roll.

Wait. Nvidia ships with proprietary OpenGL libraries. ATI ships with proprietary OpenGL libraries. Damn! You can't mix the two! So I spend $50 on a Sparkle brand Nvidia card just like my PCI-Express version and now I have TWO identical cards except for the interface. And now here is where we come so, so close...

I get it all working. Using the config example earlier I get two logon prompts on two monitors. I can log in on one and on the other. OpenGL games work on both! Most importantly, the Duck Game works! I tried Quake3 but it is pretty darn slow, but that might be related to a serious problem: one of my three cpu cores is completely pegged while the second instance of Xorg is running. I had the same problem with the ATI card (using the free non-GL drivers), so it seems to be an Xorg thing.

Another problem is that I cannot switch consoles (seems you must disable this for dual Xorg instances to work). This means no "switch users" functionality (unless you count logging on to the other monitor). So now it is harder to share the computer with my wife, which is ironic since I doubled the seats! Finally, sleep mode doesn't work so well, coming out goes to a blank screen and seems to be crashed.

So maybe I'll post a bug report to Xorg and these issues can be resolved.. but I sort-of doubt it since there is very little demand for this multiseat business...

** Update**

Xorg version 7.4 provides GLX pass-through-- so I should be able to xephyr and not fuss with xorg instances. This might solve everything....

How to Lose Data the Microsoft Way

1. Use File and Settings Transfer Wizard

I should end here, but just for posterity...

2. Uncheck all the options and only select the option to backup specific folder. Specify "C:\Documents and Settings". Chuckle to yourself as you wonder if anyone else was clever enough to use this to transfer multiple user accounts.
3. Watch the backup process succeed in creating a large .DAT file of unknown composition.
4. Assume you know what you are doing.
5. Format, Reinstall, and attempt to restore using the wizard.
6. Stare in bewilderment at all the missing user accounts and lack of data.
7. Cry a little
8. Create all the user accounts and try running the wizard on each account while logged in.
9. Allow a small gasp of hope when you notice all the avatars are restored on the Welcome Screen. It must have restored their data!
10. Cry again when you realize it didn't. At all.
11. Unpack the F.A.S.T archive using some obscure 3rd party program called fastconv.exe.
12. Cry some more after it fails on the translation database and you are left with thousands of arbitrarily named .DAT files. Try it again in WINE and get the same error.
13. Write a script to add extensions to the files based on magic library... and cry again when you realize the small number of files are only related to the user account that was logged on during the initial F.A.S.T migration.
14. Curse the heavens, curse Microsoft, then curse yourself for being such an idiot.
15. Blame the user for not making regular backups.