Another week with bad news: My laptop broke down this weekend and the warranty has expired. It’s a Dell XPS/Inspiron M170 with a juicy nVidia GeForce Go 7800 GTX card. Let me give you a few words of advice.
You know you have a broken video card when:
- A short horizontal line appears on the screen while you are happily coding the n-queens transform for DECS.
- You ignore it.
- Another short horizontal line appears.
- You continue to ignore it.
- The two horizontal lines start some kind of mating ritual and they start reproducing all over the screen.
- You “ignore” the defects by slamming your fists into the keyboard.
- The defects are still present after having uninstalled the unofficial graphics card driver (which you had to install to keep up with the latest version from nVidia, because Dell will at best release new versions of their GeForce Go card drivers once a year) and installed the official one.
- You boot up Ubuntu Linux hoping to be able to blame Windows XP for the screen corruption, only to find out that a bit of Beryl action reproduces the problem there as well.
- You figure out that Ubuntu is better than Windows because in Ubuntu the problem only slows the OS down instead of both slowing it down, crashing the display drivers and continuously flashing the screen on and off, all at the same time.
- The defects are still present after you have rebooted more than 24 times in an effort to flush them out of the system.
- Half the time you reboot the screen turns black, but you can see that the LCD back light is on and the hard disk activity light is flashing.
- You hook up an external monitor, but even that doesn’t exorcise the evil horizontal line spirits.
- The external monitor also experiences the black screen on reboot sometimes.
- You open the cover above the keyboard, pull out the monitor cable and reattach it just because the Dell support personnel said so.
- You run the Dell Hardware Diagnostics program, choose the video corruption symptom and get a bunch of messages like this: “Error Code 5300:0119 Detected a failure while writing and reading video memory. Address SOMEHEXh, expected to read 0h, but read FFFFFFFFh instead.”.
- You run the Dell Pre-boot System Assessment program and the color bars are full of defects.
- After having told the Pre-boot System Assessment program that the color bars had defects, you are thrown into an infinite loop of full screen frenzy of white, black, red, green, blue and a beeping system speaker without ANY defects showing up whatsoever.
If most of the above apply to you, you have the same laptop as me and your warranty has expired then you should contact the English XPS Premium Technical Support line and have a chat with on of their people from India. They are nice and will get a Dell sales rep to contact you so that you can get your warranty extended and a technician to replace the faulty video card. Unfortunately every third word they say will be unintelligible and every fourth word you say to them will be misunderstood.
My laptop is unfortunately the only computer in the house which has all the applications I need to work on DECS. I’ve hijacked one of the desktop machines at home and started installing the applications I need. So far MiKTeX, TeXnicCenter and TortoiseSVN is ready, but the whole Eclipse C/C++ development environment will take me a bit more time.
Now to the good news: I’ve specified the file format I intend to use for storage and transfer of the DLX matrices. I’ve not taken a stand in the byte order war yet, as I’m uncertain which will be best for the Grid middleware I’m going to use. I’ll cross that bridge when it comes. Currently the memory contents is written to the file without any modification, which works fine for the time being. I remember seeing the byte order debate for the network protocol in the OpenTTD project a while back. Maybe I can take a peek at how they did it since their code is GPL and all?
In other news: I also started on the n-queens forward transform before disaster struck. It requires the generalized form of the DLX algorithm with primary and secondary columns. The modifications to generalize my code to support secondary columns doesn’t appear to be overly dramatic. Just a touch there, a touch there and a computer free of hardware defects would just about do it. I’ve still got some catching up to do according to the project plan, but I’ll make it.
NOTE: This post has been imported from my old it’s learning ePortfolio DECS blog.