Jump to content
23 posts in this topic

Recommended Posts

Hi,

 

Anyone know how I might change the boot loader's default boot to. I changed the timer using a different thread. Now I'd like the boat loader to boot to XP automatically instead of having to select XP before the timer runs out.

 

If I'm not making myself clear. Right now everything works great dual boot wise. Darwin boot loader comes up and will automatically load OS X after 20 seconds. If I hit a key in that 20 seconds I can choose between OS X and XP. What I would like to change is after 20 seconds and I don't hit a key I would like XP to load up since that is my main OS that I use. I'm guessing I have to change a variable in a .plist somewhere. Any ideas? Thanks for helping a complete Mac noob.

Link to comment
https://www.insanelymac.com/forum/topic/2145-how-to-edit-darwin-boot-loader/
Share on other sites

Have you tried System Preferences --> Startup Disk and choose the windows folder then reboot?

 

ote: Don't click the restrt. just choose the folder and close preferences. Then restart Mac.

 

 

Boy that was easy! No terminal, no editing of files. Unfortunately it didn't do what I was hoping. After selecting the XP partition from Startup Disk I rebooted. It reboots right into XP without letting me choose OS X. I think all it did was make the XP partition the active partition. I used fdisk to set the OS X partition back to active and now its back to normal with a 20 second delay before booting into OS X. Thanks for the idea though.

 

Any other ideas on how to change boot loader to boot into XP when the timer is up instead of the default OS X are welcome. Thanks.

Sorry it didn't work for you mate. Someone here must know the commands to change the default boot option. What about adding/ changing the option in the /Library/Preferences/SystemConfiguration/com.apple.Boot.plist?

 

I have changed my boot time from there but maybe you can specify the command to change the default boot opion.

Well, the Darwin boot loader defaults to the active partition. So you can make the XP partition active, which you already did. But now you need a bootloader there: Copy /usr/standalone/i386/chain0 to your XP partition (this file is also present on any Darwin CD), and add

 

C:\path\to\chain0="Mac OS X"

to C:\boot.ini. If you did it right, the XP loader should now ask what you'd like to boot, and it should default to XP. But when you select OS X, Darwin asks you again, also defaulting to XP, which is probably not what you want. The best solution woud probably installing a real boot loader (like grub, lilo, or one of the dozens others out there), but this is beyound the scope of this post :D

Well, the Darwin boot loader defaults to the active partition. So you can make the XP partition active, which you already did. But now you need a bootloader there: Copy /usr/standalone/i386/chain0 to your XP partition (this file is also present on any Darwin CD), and add

 

C:\path\to\chain0="Mac OS X"

to C:\boot.ini. If you did it right, the XP loader should now ask what you'd like to boot, and it should default to XP. But when you select OS X, Darwin asks you again, also defaulting to XP, which is probably not what you want. The best solution woud probably installing a real boot loader (like grub, lilo, or one of the dozens others out there), but this is beyound the scope of this post :lol:

 

 

Your right on this but its what I ended up doing. Just a couple of extra keystrokes are no big deal. I'm sure there must be a way to edit the default in Darwin but I'm not sure what it is, until a mac whiz figures it out I'm happy with this.

 

Thanks for all the suggestions.

Hi,

 

Anyone know how I might change the boot loader's default boot to.  I changed the timer using a different thread.  Now I'd like the boat loader to boot to XP automatically instead of having to select XP before the timer runs out.

 

If I'm not making myself clear.  Right now everything works great dual boot wise.  Darwin boot loader comes up and will automatically load OS X after 20 seconds.  If I hit a key in that 20 seconds I can choose between OS X and XP.  What I would like to change is after 20 seconds and I don't hit a key I would like XP to load up since that is my main OS that I use.  I'm guessing I have to change a variable in a .plist somewhere.  Any ideas?  Thanks for helping a complete Mac noob.

 

i did a search and couldnt find how you changed the timer countdown on dawin.

how did you doit. i will be installing osx86 on my dad's pc to morrow and i wont be able to check the net there.

 

Thanks.

if you do the option for a quiet boot, will that bypass the darwin bootloader?

 

oh and i tried selecting the osx drive, didnt hit the restart, maunally restarted- and my winxp drive was still the default drive selected in the darwin bootloader...

if you do the option for a quiet boot, will that bypass the darwin bootloader?

 

oh and i tried selecting the osx drive, didnt hit the restart, maunally restarted- and my winxp drive was still the default drive selected in the darwin bootloader...

Quiet boot does not bypass the bootloader, it just silences it. You can hold ctrl down during boot to enter boot options, etc.

 

For what it's worth, I've had no sucess with selecting the boot drive using this method.

 

I am wondering if anyone has any good links about the darwin bootloader? It seems seriously fragile, and I am interested in more information about it...

I am wondering if anyone has any good links about the darwin bootloader?  It seems seriously fragile, and I am interested in more information about it...

There isn't much. There's a (very short) document about booting on x86 at opendarwin.org, but that isn't very usefull. Some information can be extracted from certain Apple documents about booting on ppc, but all in all, the x86 boot loader isn't documented well at all. The best source of information is the source code of the boot project, for those who can read C. As the developers themselves say, the Darwin x86 boot loader is very basic, consider using another one... :P

There isn't much. There's a (very short) document about booting on x86 at opendarwin.org, but that isn't very usefull. Some information can be extracted from certain Apple documents about booting on ppc, but all in all, the x86 boot loader isn't documented well at all. The best source of information is the source code of the boot project, for those who can read C.

Thanks for the link...

As the developers themselves say, the Darwin x86 boot loader is very basic, consider using another one... :)

So I've noticed. The problem I have is that nothing except the Darwin boot loader will load OS X for me. I've tried using grub to chainload the chain0 file (similar to the XP bootloader method), which works fine unless the first partition of my desk isn't an HFS+ partition. Haven't figured that one yet, but maybe the source will help. Thanks again.

The passed couple of times ive done it, if Ive installed Mac OS X, then XP, then Linux, when ive gone to choose Mac OS X from Grub, Windows XP has wormed itself into the Darwin boot loader *shrugs*

Yeah, it always displays all bootable partitions it knows. But as you are using Grub anyway, you could set your Mac OS X partition to active, and enable QuietBoot. Provided you load Grub from the MBR, that is.

So I've noticed.  The problem I have is that nothing except the Darwin boot loader will load OS X for me.  I've tried using grub to chainload the chain0 file (similar to the XP bootloader method), which works fine unless the first partition of my desk isn't an HFS+ partition.  Haven't figured that one yet, but maybe the source will help.  Thanks again.

Well, from what I have researched so far, you *should* be able to boot Darwin by just executing the boot sector of its partition. But as I was researching the video switching code, I didn't look at the actual loader code too closely. Maybe Darwin needs to have something done in a special way.

Well, from what I have researched so far, you *should* be able to boot Darwin by just executing the boot sector of its partition. But as I was researching the video switching code, I didn't look at the actual loader code too closely. Maybe Darwin needs to have something done in a special way.

It does seem to be the case that you can boot directly from the boot sector of the partition (the boot1h file). I have tried chainloading the boot1h file through grub, and it does indeed boot. This would seem to indicate that those using the ntldr could use the boot1h file instead of the chain0 file. It would be interesting if someone tried that...

 

From what I can understand, the boot process is:

chain0/boot0, which is stored in the MBR, is called by BIOS (assuming you're not doing grub or ntldr stuff) and scans for active partitions. Then it (or grub, ntldr) passes the disk number and partition entry of the active partition to boot1h, which is stored in the first sector of the HFS+ partition. boot1h reads the volume header of the HFS+ partition, and loads boot2, which gives the familiar boot menu, and allows you to enter kernel options. This is the part that reads the com.apple.Boot.plist. It is also the first thing written in C.

 

For the interested, common error messages and where to find them:

chain0/boot0:

'Chain booting error'/'b0 error'

(I believe, and this is just wild speculation, that this is where the problems are when the install DVD won't boot from an i850 chipset. It seems like the booter gets stuck in a loop when scanning for the boot partition or boot drive, which prevents it from printing this error. I tried to compile chain0 with debug support, but it resulted in too large of a file (max size is 446 bytes) so it didn't help.)

 

boot1h:

'HFS+ partition error' when failed to read HFS+ volume header.

'Error loading booter' when failed to find boot2.

 

boot2:

All other boot errors up to and including loading the kernel.

 

Hope someone besides me finds this useful, and please let me know if I've misunderstood anything here...

  • 1 year later...
  • 2 years later...

Edit your XP VIsta Grub bootloader

http://insanelymac.blogspot.com/2008/09/ho...-grub-boot.html

 

___________________________________________________________________

Guide 1 : Adding OSx86 to the Windows XP bootloader.

___________________________________________________________________

 

Adding OSx86 to the boot loader is an easy task. The instuctions below may seem long but the process is basically adding chain0 to boot.ini and that's it. Whilst grub is more powerful, the extra features are not needed so XP's boot loader will do just fine.

 

1) Boot Windows XP

 

2) After Login, Insert the Mac OS X86 DVD and Copy chain0 to the root of the C: drive. You should then have the file C:\chain0. (Chain0 is found on the Mac CD in /user/standalone/i386 but Windows can't read Mac formatted Discs. It seems that this folder is formatted differently so you might find chain0 in the root of the DVD. Copy /user/standalone/i386/chain0 from this.

 

3) In the explorer window, go to the "tools" menu and select folder options. Under the "View" tab, check "Show hidden files and folders" and deselect "Hide protected operating system files".

 

4) In the root of the C:\ drive, you should now be able to see boot.ini. Right click this file and click "Properties". In the window that appears, uncheck "Read Only".

 

5) Double click boot.ini so it opens in notepad (or some other text editor) 6)On the last line of boot.ini, add C:\chain0="OSx86"

 

___________________________________________________________________

Guide 2 : Adding OSX86 to Vista Boot-loader.

___________________________________________________________________

1) Boot into Vista. Copy the chain0 file from the Leopard DVD to C:

 

2) Open the “Command prompt” with “Elevated Admin” privileges from the Start Menu.

 

3) Type the following into the prompt

 

bcdedit /copy {current} /d “Mac OS X”

bcdedit /enum active

bcdedit /set {GUID} PATH \chain0

 

4) In the first command type {current} as it is, literally..nothing else..just {current} with the brackets. In the 3rd command however, replace the {GUID} with the alphanumeric GUID you see in the enumerated list under MAC OS X. You can see this list on your terminal as soon as you type the 2nd command above.

 

5) Close the Command Prompt and Restart Vista.

 

6) You Should now be looking at a screen with two options to boot into Mac OSX or Vista.

 

Select Mac OSX to see if you can boot into it. You should see the familiar Darwin boot Loading screen with the timer going down. If you dont do anything, then it counts to zero and again shows the menu screen with Vista and MAC OSX options. Dont panic!

 

Again select MAC OS X, and now as the timer counts down, Press F8. You would see a list of partitions on your disk with their names. Select the partition with MAC OSX installed by using up/down arrows and press ENTER.

 

___________________________________________________________________

Guide 3 : Adding OSx86 to the GRUB Bootloader.

___________________________________________________________________

 

To add OSx86 to the GRUB menu do this:

 

1) Copy the folder "i386" from the OSx cd (which is located at /usr/standalone/i386)and put it in /boot/grub/ The i386 folder is hidden normally so ensure you can see all hidden files in whatever operating system you are currently in. What I did is copied the files over in windows to a flash drive and then copied them from the flash drive to my home space and then used the following command in the terminal: cp -r /home/i386 /boot/grub/i386

 

2) Go To Applications > System > YaST

 

3) Go To "System" and select "Boot Loader"

 

4) Click "Add"

 

5) Select "Other System (Chainloader)"

 

6) Type in OSx86 for your Section Name and for Device select browse.

 

7) Browse to where you saved your i386 folder and select the chain0 file. This means you should have /boot/grub/i386/chain0 in the field where it says device

 

8) Click OK and you're done.

 

NOTE: If you try editing the menu.list file straight, it will not show OSx as a choice. You must initially use Yast in order to get the option to show in GRUB then if you desire you can edit it manually. .

×
×
  • Create New...