Archive for tips

Recovering a bricked Crucial M4 SSD

I own a pair of Crucial M4 256 GB SSDs.  One of them, my boot drive, has caused me no end of trouble recently!  Sometimes, after rebooting, the SSD isn’t detected by the BIOS. This seems to be linked to the 010G firmware, which has caused a lot of complaints!

So far, I have found two ways to recover from this lockup.

Route 1: the official reset way
  1. Disconnect the SATA cable from your SSD, but leave it connected to power
  2. Power your system on and let it sit in BIOS for 20 minutes
  3. Power your system off and disconnect the power cable from the SSD
  4. Wait 30 seconds
  5. Reconnect the power cable
  6. Power your system on again, repeating steps 2, 3 and 4
  7. Reconnect both the power and SATA cables
  8. Power your system back on – it should work now

This apparently does some sort of internal reset. The timings don’t seem to need to be exact – I’ve done it with 30 minutes on power each time before and it worked.

Route 2: the other way
  1. Power your system on and go to the BIOS config screen
  2. Wait for at least 5 minutes
  3. Press the reset button on your computer
  4. Watch in awe as your SSD is detected again

Sometimes the SSD is just slow to be detected by the controller. After a few minutes, though, it’s ready. By restarting the computer without interrupting the power (which is what the reset button does) we’re able to get the SSD online and also have it available before the controller times out. Magic!

Route 3: Update the firmware

There’s new firmware out now that should solve this issue once and for all. Once I’ve finished backing up my computer I will update to 040H and see if it works. I’ll let you know!


Stuck on “reading file 901.ROM” – why EeePC 901 BIOS EZ-Flash isn’t working for you, and how to fix it

I had some fun last night flashing my EeePC 901’s BIOS up to the latest version.    I got the firmware from here and followed this guide.

My Eee sat there displaying “reading file 901.ROM” for about five minutes until I gave up and turned it off.

After a bit of Googling and a bit of thinking, I found the answer: the 4GB pen drive I was using was too big.  I’d formatted it in FAT 16 as required, and allocated a tiny 20MB partition so it wasn’t over the size limit.  Even so, EZ-Flash wasn’t able to read from it.  The limit seems to be 2GB, but I haven’t tested this – luckily I had an old 64MB pen drive lying around from 2003!  Even better, it was already formatted in FAT 16! 😀

I’m documenting this here to help anyone who has this problem in the future.  Good luck!

Comments (3)

Running a program as administrator

Windows Vista and Windows 7 have a feature called UAC, which stands for User Account Control. It’s a good idea – programs can’t touch certain files or take certain actions unless you, the user, explicitly grant them administrative privileges. Sounds useful!

To get to the point of this article, as much as UAC is a good idea, it can be very annoying sometimes. Say you want to edit a config file in C:\Program Files\MyApp with Notepad++, your favourite text editor. Normally you’d right click on the file and click “Edit Notepad++” in the context menu. This won’t work in Program Files, though, as it’s a restricted folder. You need to launch Notepad++ with admin rights before you can open your file. (You might be able to read the file without admin rights, but you certainly won’t be able to save your changes!)

Or say you want to do something nifty from the command prompt. In Linux, you’d preface your command with sudo and enter your password when prompted. In Windows, you can’t do that. You need to launch your command prompt with elevated privileges, like so:

That’s: Start -> type “cmd” -> right click -> Run as administrator. Easy.

There’s an obvious downside to this, of course. In Linux you can elevate a single command and then return to being a limited user, all from the same shell. In Windows, though, your command prompt has to be elevated from start to finish. It’s the product of two different cultures. In the Linux world, the command line is king. Everything can be done from it, and it’s usually the best way of doing things. Windows expects you to work with the GUI, though, only dipping into command line mode when you absolutely have to. The GUI has almost everything you need, and you only use the command line for brief periods of time to do obscure things, generally. From that point of view, it makes sense to not have added the ability to elevate commands from within cmd, because you’re not expected to work like that. Completely understandable, but still a shame. Not to mention the source of a lot of nerdrage 😉


Why is Windows 7 bluescreening?

After upgrading from Windows XP to Windows 7, I never thought I’d see the old blue screen of death again. Wishful thinking in action 🙁

About a month ago my Windows 7 Ultimate computer started crashing with a blue screen of death whenever I connected a USB drive. The short-term solution was simple – find other ways to transfer files around. Long term, though, that was no good. I needed to find a real solution.

I noticed that whenever Windows crashed, it was outputting what it called a “minidump” in C:\Windows\Minidump. I didn’t have anything installed that could open the dump files, though, and the Microsoft Debugging Tools webpage seemed to suggest that you needed an MSDN subscription to get the tools for Windows 7. Luckily, it was just misleading/plain old wrong – the link for “Windows Vista or Previous Versions” is equally valid for Windows 7.

You can download WinDbg, the tool we’re going to use, here: Click the download button, run the program once it’s downloaded and then select the Debugging Tools option under Common Utilities.

Once you’ve got that installed, we want to make it easy to load. From an elevated command prompt (Start -> type “cmd” -> right click on the “cmd” entry and click “Run as administrator”):
cd C:\Program Files\Debugging Tools for Windows
windbg.exe -IA
WinDbg is now set to open when you double click on a .dmp file.

Now, we need to copy the crashdump out of C:\Windows\Minidump and into a folder where you don’t need admin right to read from it. Then double click on it and let’s see what WinDbg has to say.

Aha! It’s PDFsFilter.sys, a driver (surprise, surprise). A quick Google search later and I’ve found the perp – Raxco PerfectDisk, which I installed just before the crashed started, come to think of it. I uninstalled it and now I can mount USB drives again. Horray!


Eclipse debugger tips – the “Display” view

Window -> Show View -> Display.

Type some code into this view, highlight it and then press the “J” button in the top right of the frame.  This will execute the code and return the results.

I’ve been using Eclipse for over three years and I only found about this feature the other day.  Oh well, we live and learn.

Comments (2)

SquirrelMail filters

Do you use SquirrelMail as your webmail client?  I do.  Recently I signed up to a mailing list that generates about a hundred e-mails a day.  Tired of having to manually clean my inbox, I decided to set up a mail filter to do it for me.  Here’s how to do it.

Firstly, you need to log into your Mailbox Manager.  This is seperate from the SquirrelMail site, and, for Dreamhost account, can be found at  The SquirrelMail login page links to it for me, but your milage may vary.

Once in the Mailbox Manager, you need to set up two mail filters.  Why two, you ask?  Simple.  One rule to move the messages to where you want them and a second rule to delete the messages from your inbox.  Wait, wait – move and then delete?  For some reason, SquirrelMail treats “move” as “copy”.  When you add a new rule you can choose the “Move it to folder” option.  Back in the Mailbox Manager this rule appears as “copy emails”, though, which I didn’t pick up on for a few days.  No wonder it didn’t work!

Oh, and your first rule needs to be set as “execute and continue” and your second one as “execute and stop.”  The first rule needs to be set like that to ensure that the second rule is actually run after copying the e-mails.  The second rule has to be set like that – you aren’t allowed to delete and e-mail and then carry on running filters on it 🙂

One final thing – when you specify the folder to move the e-mail to you don’t need to give the full path if it’s a subfolder of inbox.  E.g, if your target is Inbox->MyFolder, then just write “MyFolder”.  If your target is Inbox->MyFolder->MyOtherFolder, then you need to write “MyFolder.MyOtherFolder”.  Entering “Inbox.MyFolder” will create a folder with the path Inbox->Inbox->MyFolder.

The Mailbox Manager tells you that the folder needs to exist before the filters can move messages to it, but the existence of Inbox->Inbox->MyFolder on my system rather proves that wrong…


Bring to front

Have you ever “lost” a window?  You click on it on the taskbar but it won’t reappear.  You have no choice but to kill the program, losing anything that you hadn’t saved.

Well, here’s a tip for you – bring up the Task Manager (press ctrl+shift+esc, right click on the taskbar and click “Task Manager” or press ctrl+alt+del followed by t), navigate to the Applications tab, right click on the program that you can’t bring up and click “Bring To Front.” No more losing a half-written email before you save it!  No more losing your work. I hope that this saves you some time and frustration. Sorted!

From my experience, this problem generally happens when you minimise a window just before it pops up a dialog box.  Using the task bar won’t restore the application as it can’t change its window state until you’ve responded to the dialog.  Shame you can’t actually see the dialog box…

Comments (4)