Archive for the ‘Technology’ Category

XBox 360 mods & game demos

Monday, August 21st, 2006

A friend of mine pointed out a new “mod chip” available for the 360 today.  It’s not a full mod chip because you can’t run home brew code, but it allows you to play pirated games or as they like to say “backed up games” (but not online). It’s pretty ingenious in that it switches between DVD drive firmwares on the fly and can even disable your network connection for you automatically. 

I’m not at all interested in this though because I just want home brew.  I take good care of my DVDs and don’t really need a backup.  Plus, I think most of these people acquire their backups online, and not by creating their own.  But, I do want to be able to run a customized media center, or stream videos from a non Media Center Edition PC and things like that. 

I won’t get into the running backups issue because I think people ought to be able to keep a backup of software that they pay for.  That is, of course, unless the game publisher wants to replace disks for free/low cost.  But I do think that game demos ought to be required.  It costs $6 to rent a game and give it a try. That is 1/10th of the cost to purchase the game.  So, if I really like the game I’d rather buy than rent.  But, with no game demo, how do I know if I am going to like the demo? People hype games all the time and then they suck.  No thanks.  I’m not dropping $60 on garbage.

So, if Microsoft wants to discourage the development of mod chips, they ought to let free software projects submit their code so they can get approved to run on the 360.  They should also require demo releases so that people can try before they buy and won’t care  (as much) about running “backup” disks.

LSI Raid cards

Monday, August 21st, 2006

So we shipped a whole bunch of products out into the field that use LSI raid cards.  The controller cards have cache on them, as do the drives.  The drive cache was left on and it ended up causing a bunch of headaches for us in the field.  Obviously it is bad to cache on both the hard drive and the controller.  If the drive loses power before it writes its cache to disk, the controller will think everything is ok when, in fact, the cached data was never written out.  It has caused drives to fail in the field and sometimes arrays do not rebuild when a drive is replaced.

So, since I did the hardware abstraction layer, which interacts with the LSI cards through their “megalib” library, I was tasked with writing an application that would disable the drive cache on all of the hard drives.  The drives in question are SATA drives, but the LSI card makes them appear as SCSI devices to Linux.

In order to disable the cache, I have to send a command directly to the drives using a pass through function in the controller cards.  After finding some good resources on SCSI commands, I found it wasn’t actually a difficult task.  But the LSI Library’s pass through is somewhat confusing to me and not very well documented.  You pass in a CDB structure (command descriptor block) that tells the drive what you want it to do (in this case modify the drive cache settings). 

The problem being that I need to modify just one bit of an entire byte.  So I have to know the value of the rest of that byte.  So I sent in a command to read the drive information.  Using the serial output on the LSI card, I can see that it is reading the HDD configuration, but I see no change in the output with write cache enabled and disabled.

The pass through function provided by LSI requires you pass in a CDB which also has a pointer to memory used for input or output (depending on the command you send).  When I try to just set the first three bytes (which are all I should need to modify the drive cache), it fails. 

So, not only does it not seem to be reading the data properly, but it doesn’t seem to write it either.  Most likely, I’m doing something wrong.  But the fact that there is no satisfactory documentation, and that I have to wait to hear from one of their developers, kind of irritates me.

But, I cannot say a whole lot here because the code my work puts out almost completely lacks documentation.  I’ve written general classes to do some basic things only to be told by someone later that we already had a class written to perform that task.  Of course, I couldn’t have possibly known that unless I delved through our source.  The problem being that we have millions of lines of code!

Edit: I forgot, I was going to put some links to some great resources that I found.
This one from answers.com talks about all the different commands you might want to issue to a SCSI device.
Here is one from Apple that shows where the WCE (write cache enable) bit is changed.

Invisible Shield for Canon camera LCD

Monday, August 21st, 2006

Well, I’m not much of a picture taker, so it took a long time to get a good field test in on the camera’s LCD screen protector.  I was pretty nervous about this one because they tend to peel off after some time.  The screen has been on there for a month and has been used several times and you still cannot even tell that there is a protector over the screen.  No, it’s not because the screen fell off.  If you look closely you can see the edges of it.

This last time I used it in the dark at the beach, however.  So it was clumsily removed from its bag, and replaced in the dark.  The humidity did not seem to affect the adhesive either.

As you recall, I put one of these shields on my Creative Zen Vision:M also.  The camera’s protector was much easier to put on but both are performing quite well.  I did manage to get a small scratch on the protector on my MP3 player, but it is not very noticable.  If I were to take a picture of it, I could undoubtedly get that replaced, but it isn’t worth the effort at this time.

Shameless plug

Thursday, August 17th, 2006

Ok, here I am putting in a shameless plug for a friend of mine.  He wrote a time clock or time sheet program for windows.  You can find it here.

Alright, I’m not just putting it here as a shameless plug.  I think it is pretty cool.  He spent a lot of time and effort developing it in his free time.  What I find so remarkable about it is that he wrote it using pascal.  I thought it was an interesting choice.  I don’t know anything about pascal, to speak of.  I didn’t even have a class on it at school.  I’m not at all remotely interested in it as a language.  Granted that Delphi is still supposed to be pretty popular.  There are sites devoted to it.  But this friend of mine hasn’t had to do pascal programming at work for years.

If I had a lot of viewers, I’d probably get flamed for being so marvelled by the use of pascal.  But I guess it’s just a change in the wind, all programming languages tend to get phased out.  It’s sink or swim in this world.  I’ll likely have to learn some languages that I had never dreamed of some day.

Am I a nerd?

Sunday, August 6th, 2006

Sometimes, when I listen to my coworkers talk about software, linux distros, etc, I wonder if I am really a computer nerd.  They talk about all these things that only seem to interest me mildly.  I’m always willing to talk to them about it, but never know as much as they do, and never am interested in learning a whole lot more.

I’ve worked on some interesting projects in the past that I have enjoyed.  I’ve worked on a Hardware Abstraction Layer (HAL), audio/video network transportation, code optimization, and administration tools just at my current employer alone.

They have, for the most part, been interesting projects.  The most interesting being the optimizing, and the HAL.

I’ve decided though that what I am most interested in is security, encryption, and other such things.  I probably am not good enough at math to develop or break encryption algorithms.  But, I think I need to start spending time getting more acquainted with these things that interest me.  Even if it never ends up aiding me greatly in a professional aspect.  I think it would make an interesting hobby.

Password creation

Monday, July 31st, 2006

I thought this was an interesting read about passwords.

People definitely need to be more secure with their passwords.  The fact of the matter is though that weak passwords aren’t always as dangerous as just browsing the wrong web page can be.

So many people just install any software application a website thinks they ought to have.  Browser vulnerablities allow malicious site owners to force software installation on unsuspecting web surfers.

I’m not saying that people ought to continue on with their weak passwords.  I’m just saying that people need to be educated about more than just password creation.

It’s the fear of malware that causes me to force friends and family to use a severely limited account when they use my Windows machine.

Al Qaeda’s IT department shutdown?

Monday, July 31st, 2006

There was an article on News Factor talking about one of the key players in Al Qaeda’s internet “marketing” campaign.  I’m not sure why the article is so late in coming since the guy was arrested almost a year ago.

Anyway, they say that this guy was instrumental to spreading Al Qaeda propoganda.  He made some crucial mistakes while working that helped narrow down his location to the London area.

The article goes on to compare Al Qaeda’s IT department to Script Kiddies, indicating that they are rather inept.  While these lower level people seem to be stumbling, I’m willing to bet that we won’t see Osama leaving his digital footprint anywhere.

Instead, I think that these organizations use these people as tools.  They couldn’t care less what happens to the people once their purpose has been served.  That is why they let them become suicide bombers and don’t blow themselves up.  They let these low level people stumble around taking up valuable resources that could be used to track them down.

OLPC to help NSIT?

Sunday, July 30th, 2006

There has been a lot of talk lately about the One Laptop per Child program.  On paper it sounds good.  Every child will be able to learn how to use a computer in such countries as Argentina, India, and Nigeria.

Some people think it’s a great program.  I think it’s, more or less, a nice idea on paper but not very practical.  I think that starving children would end up selling their laptops for money.  I think corrupt officials will misappropriate them.  I think they will get stolen from the children.  I also think that Nigeria shouldn’t be allowed to receive them.

There has been a large number of Nigerians who have tarnished the country’s image for a long time.  Corruption abounds there.  Their national football league allows for referees to take bribes.  They are also the home of the Nigerian 419 scam.  Why the rest of the world hasn’t screamed to have them severed from the Internet is beyond my comprehension.  As Nigeria’s image tarnishes, their economy will worsen.  If it weren’t for their oil, I expect they would have been cut off from the rest of the world years ago.

As companies avoid doing business with Nigeria due to the corruption, the people will become more dishonest. 

I am positive that a lot of people participate in such scams to try and feed their families.  But they are only making the situation worse for their children.  Children who will have to become more dishonest than their parents to survive.

Now the lovely OLPC program is set to ship over 1 million laptops to Nigeria.  People argue that the scammers already have better equipment, but I bet most NSIT (Nigerian Scammers in Traning) could use the helping hand!

By cutting off Nigeria from the global economy, many people will starve.  But if we give economic and humanitarian aid to Nigeria, the government will use it to suit their own needs and not the needs of the people.

So what do we do with Nigeria?  I don’t think there is any right solution.  Nothing we do will work until we can get rid of the culture of corruption.  Until we do so, I don’t think we should let them have access to scam the rest of the World from the comfort of their local Internet cafe.

OpenBSD

Wednesday, July 26th, 2006

When I setup this server, I was going to use FreeBSD but a coworker told me that OpenBSD touted their strong stance on security.  Their website boldly claims that there hasn’t been a security hole in their “default configuration” in something like eight years.  So I gave it a try and installed it.  I don’t know if sshd is part of the default configuration but it had SSH1 enabled by default.  I don’t think Fedora or Mandrake or any other Linux allows SSH1 by default.

I claim that sshd is part of their default config because all the install asked me was “Would you like to install sshd? [Y/n]“  So I instantly distrusted OpenBSD from that point on because their claim seemed outlandish.

Not only that, but the default installation didn’t even install the ports service (think urpmi, yum, etc).  That’s how their tutorial talked about installing all services.  I spent forever trying to find dependencies for all the things I wanted to install and just gave up.

So, even if they are the most secure OS in the world, they are probably the least user friendly.

Invisible Shield Part 2

Saturday, July 22nd, 2006

Ok, I was pretty pleased with the results of my previous shield so I decided to get one for my digital camera.  The camera is a pretty typical Canon A510 or whatever.  It’s got a nice 2.5″ or so LCD display.

I put the invisible shield on last night around 5pm.  It went on rather well.  It fit so precisely that you cannot even tell that it is on my camera.  It looks perfect.  Best of all, it should be completely scratch proof.  I tried to feel the seam on it and I could not.  I suspect that this will help to keep it from coming off.  We’ll have to wait and see what happens over time, of course.

No Scott, you can’t scratch my screen.