Hac Snow on a Dell Dimension 4700

| by Ken | in Technology Add comments

One more Hacintosh post before I resume normal programming here. As I described in my E520 guide, I relied heavily upon work done by others both in the way of instructions and files created and collected. Having successfully used these methods and tools, I wanted to understand better what it takes to do a setup without having these already built for you. My sister had a computer she wasn’t using any more and had given it to me to rebuild to be handed off to our aunt who needed an upgrade. But my aunt hadn’t been able to take the new computer so I figured I’d use the computer as my test bench. Below is what it took to get a Dell Dimension 4700 setup to run MacOS Snow Leopard and what I learned on the way.

Just for kicks, I started off by using the E520 boot CD and followed my E520 guide. The retail install DVD only made it as far as “starting Darwin” before it rebooted the computer – no surprise considering that the E520 boot CD was setup special for an E520. But the question remained – how was it setup special, anyway? The first thing I did was to get a copy of EvOSX86’s DSDTSE tool for Windows. This amazing tool produces a file containing DSDT description of the system. You can get DSDTSE for either Windows or MacOS but since the computer was already running windows, and since the reason I needed the DSDT file was to setup MacOS, it’s great that you can get DSDTSE for Windows. Next, I got a copy of Empire’s Legacy bootCD (near the bottom of the post, the download that includes the note about working with Pentium D). The Legacy version here was important because the kernel in the installer wouldn’t boot up on this computer due to incompatible CPU hardware. The Legacy version takes care of that with a special kernel loaded on bootup and by using ISOLINUX as a prebooter. Also included in the Legacy boot CD is a healthy list of kexts that cover various issues like a PATA CD drive (as the 4700 has) and special kexts for working with the special kernel. The kexts and the kernel and the DSDT are all wrapped up into the Preboot drive image.

I created my own version of the bootCD by merging in my modified Preboot.dmg with the Empire Legacy bootCD’s ISOLINUX. If all this sounds hard, it was. And it runs sort of contradictory to my original plan which was to learn what was done for my E520. But I kept pushing forward figuring that if I could figure things out for this computer, I could do it for my E520 or a newer computer whenever I decided to move my Hacintosh to newer hardware. I got to be good friends with the hdiutil on my working Mac (further proving that to do this kind of setup, you really need to have a working Mac in addition to the computer that is going to become a Mac). hdiutil is the command line disk image tool that can create HFS drive images or hybrid (HFS, Joliet, etc.) ISO files. Mastering that tool proved to be key to getting the disk images created correctly and being able to quickly repeat for the trial and error that it took to get all the pieces correct.

In the process, I was able to upgrade the Empire Legacy boot system with the latest Chameleon boot files (and images). I was also fortunate to have used CPUID (don’t download the installer which includes Ask toolbar!; download the zip instead) on the Dell Dimension 4700 while it still had Windows XP running on it and I used the “-html=” command line flag to produce an HTML file which I moved off that system so that I could refer back later. And that helped me build an smbios.plist file which Chameleon later used.

The install was slower than on the E520 but more important was the big “Install Failed” accompanied with an exclamation point in a yellow triangle. I worked on that for a while but accidentally discovered that the computer would still boot and then continue with the install process. So it just slightly shifts the order of the E520 install. And it doesn’t ask for your time zone this way – easy to set yourself later.

The CPUID html file was also helpful in determining the hardware IDs for the various devices that needed special kexts. The built in audio, graphics, and ethernet all didn’t work with the stock install. They all needed to be supplemented with kexts to get working. For the audio, I went with the AC97 kext from kexts.com. I only needed the kext, not the preference pane. At first, it didn’t seem to work because I was using the audio out (green) jack on the back of the computer and the one on the front. It turned out that for some reason, the audio had been mapped to the black jack instead – a mistake in the kext, I think, but not worthy of worrying about. The ethernet was pretty easy using the ID from CPUID, I found that it was an 8255 which meant the 8255 kext from kexts.com.

Like with the E520, the video was more complicated. I was able to determine that the chipset was an Intel 915 and that the GMA950 driver should work. And in fact, the GMA915 driver I got from kexts.com did work initially. (Although I’m not crazy about the installer process so I downloaded the pkg and extracted the two kexts from inside the archive in the pkg and just installed the kexts along with the audio and network.) But, again like the E520, it broke after I ran software update to install 10.6.2. Apparently a similar story to the Nvidia support, support for older graphics was removed from the 10.6.2 stock kexts upon which the GMA915 relied. This time, however, changing to a 32 bit boot didn’t improve things and I suspect this computer, due to the CPU limitations, is always booting in 32 bit mode, anyway. And I wasn’t going to get a graphics card just for this test, so I went with the major cheat of just copying the 10.6.0 drivers and reapplying them after upgrading to 10.6.2. That seemed to work fine. So it ended up being a lot of kexts to get it working, but that’s okay for this not-so-new computer and especially considering the test nature of this exercise. It is pretty cool that QE and CI actually work on this old video card. (Ripples visible when adding a widget to the dashboard.)

Back to my E520 guide, I modified Dr. Hurt’s Post Install tool (which installs Chameleon) to include the kexts, DSDT, and smbios for my 4700. These kexts are the same ones from the Legacy boot CD and the DSDT and smbios are the same as used in the Preboot image too. The com.apple.Boot.plist is modified only slightly from the Preboot one to remove the “-v” kernel flag and add in Graphics Mode (for a prettier boot screen) and a timeout flag (so you don’t have to babysit every boot).

This all mostly worked. The only snag was removing the “-v” actually caused it to not boot. Apparently, the verbose flag was making the boot up process run slow enough that the SATA controller was ready but without the flag, the SATA controller wasn’t ready when the computer booted and I got the dreaded “still waiting for root device” error. Fortunately, this fix is well known now and I followed TheKing’s instructions for modifying my DSDT. That fixed my boot up problem and the system seems pretty stable now. (Only one crash so far – a kernel panic when setting the time zone.) Even the PS/2 devices seem to work. (I did the setup using USB keyboard and mouse but dug up PS/2 keyboard and mouse after the install was done and all seems good.)

So looking back, the general steps for my setup were:

  1. On working WinXP, run DSDTSE to extract DSDT file; run CPUID and save html result; save both files off the computer
  2. Modify DSDT for slow sata fix; create smbios file from CPUID; modify com.apple.Boot.plist to use both; rollup DSDT, smbios, com.apple.Boot.plist, mach_kernel.test7, and all the required kexts into a Preboot drive image
  3. Modify Dr. Hurt’s Post Install tool to add in the contents of Preboot and minor tweaks to com.apple.Boot.plist
  4. Create ISO of the whole shebang being sure to use the eltorito boot flag on the ISOLINUX.bin – this is the Boot CD for your computer
  5. Use Boot CD to boot computer; remove when you get to boot selection screen; insert retail install DVD; do Disk Utility to format drive for HFS+ (and wipe out WinXP); proceed with retail install
  6. When “Install Failed” comes up, ignore it and reboot; be sure to reboot from the bootCD – remove the retail install DVD (which isn’t needed any more); finish retail install with keyboard and account stuff
  7. On the BootCD, run the Post Install tool in the Post Install folder – it copies over Chameleon, kexts, DSDT, smbios, and Boot.plist; run the Kext Utility to install kexts in the S/L/E subfolder of the Post Install folder.
  8. Reboot with no CDs in the drive – it should now be able to boot on its own
  9. Do the 10.6.2 Upgrade using Software Update and when that completes, reinstall the video kexts, if necessary

If anyone wants more details or any of my files, please write in the comments. Also I’ve got a script I created to automatically create the drive image and iso files which I can add to this post if anyone things it would be useful.

EDIT: I’ve gotten a couple of requests for the files I used in this setup, so here’s the ISO I created during this process. It should contain everything you need to do the setup with the 4700 I had. (Of course, 4700s vary in hardware so expect something not to match up.) BootCD4700.iso

11 Responses to “Hac Snow on a Dell Dimension 4700”

  1. […] install disc ran fine right up to the end when it gave the failure notice, as happened to me with the Dell Dim 4700 install. And like that install, this one seemed to work fine after […]

  2. […] guide is a combination of many different guides – most notably my own previous install guides (1 | 2), blkhockeypro19’s E520 guide, and anguish’s triple boot guide (at MyDellMini.com). Big […]

  3. eman2949 says:

    HI, I was wondering if you could send me a few kexts and the dsdt for your 4700… Or just let me know what kexts you using for 10.6.5 to get graphics running with QE/CI on the gma915, thanks… Would really appreciate it…

  4. Ken says:

    eman2949, I’ve added the ISO to this post so you can try it with my files (including the kexts and the DSDT). I have not updated this hacintosh to 10.6.5, though. Only up to 10.6.2. If you do get it to 10.6.5, definitely post back here and let me know how it went.

  5. Enco says:

    Hi!

    Forgive my English!

    I have a Dell Dimension 4700 and I installed 10.4.11 (indeed, JaS 10.4.8 updated to 10.4.11). There Quartz Extreme, so VLC works well.

    I read your guide and I installed Snow Leopard Retail, but unfortunately, there is no Exteme Quartz and Core Image. VLC does not work in this case.

    My computer, made in Ireland, has an ATI Radeon x300 / x550 / x1050. There is a solution to have Quartz Extreme.

    8086:244e Intel Corporation 82801 PCI Bridge
    8086:1064 Intel Corporation 82562ET/EZ/GT/GZ – PRO/100 VE (LOM) Ethernet Co
    8086:1080 Intel Corporation FA82537EP 56K V.92 Data/Fax Modem PCI
    8086:2660 Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) PCI Express
    8086:2581 Intel Corporation 82915G/P/GV/GL/PL/910GL PCI Express Root Port
    1002:5b70 ATI Technologies Inc RV370 [Radeon X300SE]
    1002:5b60 ATI Technologies Inc RV370 5B60 [Radeon X300 (PCIE)]
    8086:2640 Intel Corporation 82801FB/FR (ICH6/ICH6R) LPC Interface Bridge
    8086:2658 Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI
    8086:2659 Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI
    8086:265a Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI
    8086:265b Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB UHCI
    8086:266a Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) SMBus Cont
    8086:2651 Intel Corporation 82801FB/FW (ICH6/ICH6W) SATA Controller
    8086:266f Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) IDE Controll
    8086:266e Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) AC’97 Audio
    8086:265c Intel Corporation 82801FB/FBM/FR/FW/FRW (ICH6 Family) USB2 EHCI C
    8086:2580 Intel Corporation 82915G/P/GV/GL/PL/910GL Memory Controller Hub

    • Ken says:

      Sorry – never ventured into the ATI territory. Also, that computer is pretty old now so I suspect you’ll be disappointed with performance. In other words, I’m not sure it is worth your trouble to figure out the problem with the ATI card.

    • Bill says:

      ATI cards previous to the x1000 series won’t work with an Intel Mac. Sorry.

  6. George says:

    I was wondering if you could explain the DSDT “slow sata fix”. The link to TheKing’s instruction is dead. I’m had my system running for years now thanks to you. I’m starting again trying to make a cleaner system and gain better understanding. Thank you for plowing the way!

    • Ken says:

      George, happy to hear it has been working for you. I honestly don’t remember a thing about the DSDT change. I found the post at projectosx archived so I’ve updated the link in the post to go to the archive instead.

  7. Don says:

    Thank you very much for this information!!! I don’t have a Dimension 4700 but instead I have a Dimension 4600 of which has a Socket 478 instead of a socket 775 which is very close to the 775 with very slightly fewer capabilities also the chipset I believe is possibly the same. Also I have discovered that 10.7 has been successfully installed in a Dimension 3000 which would compare slightly less to a 4600 and is a bit older. So far all I have accomplished was 10.5.5 with great success but none with 10.5.6 of which I have seen running on these but I couldn’t understand the steps required to make it work. I’m new to Mac which greatly limits my capabilities unless I have clear detailed instructions.

    • Ken says:

      Good luck with the install, Don. Report back with your results. I probably won’t be able to help, but if you post any issues you have and what you find to resolve them, it could help others.

Leave a Reply

Human Verification *

All content Copyright © Katharsys LLC Created with Wordpress, Theme "Synergy" by Pagelines modified by Katharsys LLC