Macbook Pro won’t boot from an installer DVD? What to do?

Posted: October 28th, 2011 | Author: Jacob Hammond | Filed under: Uncategorized | No Comments »

I’ve had a Macbook Pro since early 2008 and it’s been a very solid machine so far. Unfortunately, it had a bit of a mishap earlier this year during a road trip when I opened a door and it tumbled out of a loose bag and had a bad encounter with the pavement. After the hit, it actually booted up long enough for me to back up some important data, but after shutting it down, it refused to start up and just emitted a series of death clicks, eventually followed by a “question mark disk” icon (a flashing symbol of a disk with a large “?” in the middle).

Cue ahead to a few weeks ago when I finally get around to replacing the hard drive in the thing. I picked up a WD Scorpio Black which, at 7200 rpm and a capacity of 320gb, is a nice improvement over the wrecked stock 5400 rpm / 120gb drive. After removing and reinstalling lots of tiny screws, the new drive went in without any problems.

I picked up a copy of OS X Snow Leopard on DVD, popped it in the drive and started the machine up, expecting to be on my way. Then, uh oh, question-mark-disk icon again! I then spent several hours trying various key combinations that were supposed to make the machine boot from the DVD, or display a list of boot options, or reset the PRAM, or generally make things work, and each and every time, nothing happened. The DVD drive would spin up and make various read-type sounds, only to finally spin down, eject the disc and display the dreaded “?” icon once more.

Looks like my Superdrive is broken or it just doesn’t want to boot from a DVD. What to do? After lots of trial and error and general stress, I found a solution that works:

  • Use MagicISO ($30) or a similar tool to create an ISO image of the DVD. ImgBurn (freeware) might also work. Change the ISO file’s extension to DMG.
  • Download and install TransMac.
  • Get a USB thumb drive that has a 4gb or greater capacity.
  • Open TransMac. Right-click on the thumb drive and select “Format with image”.
  • Browse to and select the OS X DMG file that you created earlier.
  • Wait for TransMac to write the file to the thumb drive. Exit TransMac and eject the thumb drive.
  • Insert the thumb drive into the Mac machine; start it up. Hold down the Option key as it boots.
  • Wait until you see a drive icon with an up-arrow below it. Click on the arrow.
  • Proceed to install OS X. Success!

These instructions assume that you are using a Windows-based PC to create the thumb drive. TransMac is the only Windows-based tool that can do it correctly — other thumb drive writers will mess things up.

If you have access to a .DMG or an .ISO file that already contains an OS X installer, you can skip the first step.


CP437 Fonts for Windows

Posted: January 26th, 2010 | Author: Jacob Hammond | Filed under: Uncategorized | Tags: , , , , , , | 9 Comments »
Codepage-437

CP437, yo

In my search for a good monospaced font for coding and other fixed-width uses, I began looking for a Windows version of the original Code Page 437 “OEM font.”

Unable to find a suitable replacement, I created .FON versions of the font using Fony, a spiffy freeware tool for editing bitmap fonts.

There’s both a 9×16 and an 8×16 version. Those of you who ever knew too much about EGA will recall that it had an 8×16 character size, whereas VGA’s is 9×16. I find that both are suitable for modern use, but I like the 8×16 a bit more because it seems better suited to the aspect ratio of a modern display (9×16 feels a little too “loose”).

Download them both here (Windows .FON format): 8×16, 9×16.

Feel free to re-use and re-distribute as you see fit.


Mounting a big ext2fs partition on a USB drive in FreeBSD

Posted: December 14th, 2008 | Author: Jacob Hammond | Filed under: Uncategorized | 2 Comments »

I have a Maxtor OneTouch 4 Plus external USB drive, 750gb, that I wanted to connect to my home server running FreeBSD 7.0. I planned on using the drive for holding music and media, using the FreeBSD server as a media hub running Mediatomb and NFS/SMB shares.

In planning the venture, I needed the hard drive’s format to be as universally compatible and as universally stable as possible. I needed to be able to reliably interact with the drive under FreeBSD and Linux, as well as OS X and Windows (should the need ever arise, I want to be ready).

After some thought, I ended up settling on ext2 for the drive’s file system. I chose ext2 because:

  • It is fairly universal, in that it can be mounted and used reliably from most OSs.
  • I did not want to use FAT32; plus, FreeBSD’s msdosfs driver could not mount the drive properly (even with the -o large switch).
  • Did not want to use NTFS because of general shakiness on any non-Windows platform.
  • I initially tried UFS, but gave up after repeated failed attempts to get FreeBSD to partition and label it properly. (Not sure why; suspect the drive’s detected geometry may have been an issue.)
  • Considered ZFS but decided I don’t want to be that cutting-edge; plus I wouldn’t have a use for most of its extended functionality. (I just need a basic filesystem.)
  • Considered HFS+ but FreeBSD support is shaky (old driver, could not get it to compile on 7.0).

So, I plugged the drive into an Ubuntu Ibex box, formatted it into one ext2 partition and plugged it in to the FreeBSD box.

mount -t ext2fs /dev/da0s1 /mnt/media

So far, so good. The output of the mount command shows that the drive is there and mounted. But then:

cd /mnt
ls -la
ls: media: Bad file descriptor

For some reason, the mount point could not be listed.

After some research, I came across this bug report that described the problem in greater detail. Basically, newer versions of Linux seem to format ext2fs partitions using a 256-byte inode size, versus the previous default of 128 bytes, which is what the FreeBSD ext2fs driver expects it to be.

Fixing The Problem

To fix it, you’ll apply a patch by Josh Carroll, who posted it in the bug report linked above. Under a standard FreeBSD 7.0 installations, the commands will be something like this (as root):

cd /usr/src/sys/gnu/fs
cp -R ext2fs ext2fs.orig
cd ext2fs
fetch http://pflog.net/~floyd/ext2fs.diff
patch <ext2fs.diff
cd /usr/src
make buildkernel KERNCONF=GENERIC && make installkernel KERNCONF=GENERIC

If all goes well, you should then be able to restart, mount the drive, and have it work as expected. Good luck!